我正在尝试使用库BSgenome检索感兴趣的序列。我想以一种fasta格式保存序列,如下所示:
>Ggallus_Gene_name
ACGTCCCCCCCCC.........
但我似乎无法在我的数据seq中以这种格式获取我的数据。任何建议都将不胜感激。
library(BSgenome)
biocLite("BSgenome.Ggallus.UCSC.galGal4")
library(BSgenome.Ggallus.UCSC.galGal4)
seq=capture.output(cat(paste('>Ggallus_CRX',
'\n',getSeq(Ggallus,"chr5",start=54293885,end=54318108))))
谢谢!
答案 0 :(得分:2)
将您的查询表示为GRanges(开头,结尾,名称可以是载体,例如10,000个不同的基因)
query = GRanges("chr5", IRanges(54293885, 54318108, names="Ggallus_Gene_name"))
然后检索序列
seqs = getSeq(Ggallus, query)
并写出来
writeXStringSet(seqs, "my_file.fasta")
导致前几行
>Ggallus_Gene_name
GAGCGCGGCCCTCCCGCCCGGCCCCGGCCTCCCCCGCTCCGCCCGGCGCTGCGCGGCCCCGCTCCGCCTCCTCCCCCCGG
GGCGTGGGGCCGCGGCGGGGGCTCGGGCAGGTGGAGGTGACCTCCGTGCTGCCGCCCCTCCCGCCCGCCTTCCTGCCTTC
CTCCCTCCGCGGGAAGGAGGGGAGGGAAGTGGAGAAAAAAAAAAAAAAAGAAGAGAAAAAAGGGAGAGAAGGAGAAAAAA
AAAAAGGGGAAAAAAAAAAAGCAGAGGGCCCCAAGGCATTTCTCAACCAAGGGCGCGATTGTGCAGCGCGGCCCCCCTCT
...
可以连接和写出不同来源的DNAStringSets,writeXStringSet(c(seqs1, seqs2), "my_file.fasta"))
或以前的文件可以附加到writeXStringSet(seqs2, "my_file.fasta", append=TRUE)