私は特殊なテキスト ファイルを使用しています。これは基本的に、名前の長いリストと、各名前に関連付けられたランダムな文字列です。私が興味を持っている特定のコンセンサス シーケンスを抽出しようとしています。シーケンスは、たとえば "STXDXIK" で、X は任意の文字です。テキスト ファイルを R に書き込んで、「TEXT」という名前を付けました。
次に、正規表現を使用して、シーケンスを含むエントリのリストを分離し、「ylist」と呼びました。
ylist<- TEXT[grep("ST[A-Z]D[A-Z]IK", TEXT, value=FALSE, perl=FALSE)]
次に、regexpr 関数を使用して、関心のあるシーケンスの位置を特定し、「r」と呼びました。
r<- regexpr("ST[A-Z]D[A-Z]IK", ylist)
問題は、このシーケンスがある場所のインデックスを、開始位置と一致数とともに取得することです。ただし、完全なシーケンスが何であるかが重要であるため、「ylist」からインデックスではなく、完全なシーケンスを抽出することに興味があります。誰でも助けることができますか?
R で substr と regmatches 関数を試しましたが、一致ごとに substr を適用する必要があります。これは、このシーケンスと多くの一致があり、regmatches が機能していないように見えるか、機能させることができないため、実用的ではありません。 、おそらく間違ったコマンドを入力したためです。