Below is a simple function that takes a data.frame that has a column name
and seq
and writes a fasta file from it
writeFasta<-function(data, filename){
fastaLines = c()
for (rowNum in 1:nrow(data)){
fastaLines = c(fastaLines, as.character(paste(">", data[rowNum,"name"], sep = "")))
fastaLines = c(fastaLines,as.character(data[rowNum,"seq"]))
}
fileConn<-file(filename)
writeLines(fastaLines, fileConn)
close(fileConn)
}
require(dplyr)
exampleData = dplyr::data_frame(name = c("seq1", "seq2", "seq3"),
seq = c("AAGGTTTTGCCAA", "TTTTGCCAAGGAA", "TTTAAGGTGCCAA"),
other = c("meta1", "meta2", "meta3"))
writeFasta(exampleData, "example.fasta")