When I use write.fasta in seqinr, the file that it outputs looks like this:
>Sequence name 1
>Sequence name 2
>Sequence name 3
...etc
Sequence 1 Sequence 2 Sequence 3 ...etc
In other words, the sequence names are all at the beginning of the file, and then the sequences are output together at the end of the file.
What I'd like to do is this:
>Sequence name 1
Sequence 1
>Sequence name 2
Sequence 2
>Sequence name 3
Sequence 3
...etc
Is that possible with write.fasta?
I got stuck with this and got some help from a friend. You need to define the sequences in a list here is an example of code where the input from maxquant output is a csv with a column called sequence and a name column called 'leading razor protein':
library(tidyverse)
library(seqinr)
MU = read_csv('data.csv')
seqs = as.list(dplyr::pull(MU, Sequence))
names = dplyr::pull(MU, `Leading razor protein`)
write.fasta(seqs, names, "MU.fasta",
open = "w", as.string = FALSE)
I was having a similar problem. What I did was to convert the vector that contained the sequences to a list and it worked fine.
e.g., write.fasta(as.list(seq),names,file)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With