2

多数のエントリを含む FASTA ファイルがあります。すべての DNA 配列は異なりますが、一部の FASTA 名は同一です。名前のコピーが複数ある場合は、一意の名前になるように番号を追加したいと思います。例えば:

>NAME
ATTTTTGGGGGGTGTGTG
>NAME
ATTTTTTTTCGCGCGC
>NAME
AAACCCTTTGTG

次のようになります。

>NAME_1
ATTTTTGGGGGGTGTGTG
>NAME_2
ATTTTTTTTCGCGCGC
>NAME_3
AAACCCTTTGTG

ありがとう。

アップデート。とにかくRでこれを使用することを計画していたので、fastaシーケンスをRにインポートし、それをデータフレームdf. 次に、次の行を使用して、必要に応じて名前を変更できます。

library(plyr)
ddply(df, Name_Column, transform, Column = paste(Name_Column,seq_along(Name_Column), sep=""))

この投稿に触発されたコード

4

2 に答える 2

5

BioconductorBiostringsパッケージには、

library(Biostrings)
fa = read.DNAStringSet(...)

それで

names(fa) = make.unique(names(fa))
write.XStringSet(fa, ...)

または他の便利な操作。

于 2011-10-20T13:35:20.913 に答える
4

次の AWK コマンドを使用できます。

$ echo -e ">A\nNNNN\n>A\nNNNNNNN" |\
awk '/^>/ { printf("%s_%s\n",$0,i++);next;} { print $0;}'

>A_0
NNNN
>A_1
NNNNNNN

Biostar も参照してください: http://biostar.stackexchange.com

于 2011-10-19T05:24:58.550 に答える