2012-08-06 246 views
7

當我在seqinr使用write.fasta,它輸出文件看起來像這樣:使用R包seqinr寫入fasta文件?

>Sequence name 1 

>Sequence name 2 

>Sequence name 3 
...etc 

Sequence 1 Sequence 2 Sequence 3 ...etc 

換句話說,序列名字都是在文件的開頭,然後將序列一起輸出在文件的末尾。

我想要做的是這樣的:

>Sequence name 1 
Sequence 1 
>Sequence name 2 
Sequence 2 
>Sequence name 3 
Sequence 3 
...etc 

那是可能的write.fasta?

+3

請您發表[重複的例子(http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example)?例如,發佈用於調用'write.fasta'的代碼,並使用'dput'來顯示您傳遞給它的代碼? – 2012-08-06 00:05:48

回答

2

實際上,我總是以正確的方式獲得它,而且我從來沒有碰到類似於你的問題。嘗試這個。

複製下面這段文字:

>seq1 
agctgtagtc 
>seq2 
agtctctctt 
>seq3 
atgtataaaa 

另存爲 「test.fasta」。然後,在R請勿以下

my.dna<-read.fasta("test.fasta") 
write.fasta(sequences=my.dna,names=names(my.dna),file.out="write.my.dna.fasta") 

如果打開「write.my.dna.fasta」然後你會得到如下:

>seq1 
agctgtagtc 
>seq2 
agtctctctt 
>seq3 
atgtataaaa 
14

我有一個類似的問題。我所做的是將包含序列的載體轉換爲列表,並且工作正常。

例如,write.fasta(as.list(seq),names,file)