我有一堆蛋白质 ID,我需要检索相应的编码序列 (CDS)。我设法检索了 CDS,但每个序列的名称从 XP* 更改为 XM*,并且我需要为每个序列保留 XP* 标头。
基本上它看起来像这样:
library(renters)
search1 <- entrez_search(db="protein", term="XP_012370245[Accn]")
links <- entrez_link(dbfrom="protein", db="nuccore", id=search1$ids)
rec <- entrez_fetch(db="nuccore", rettype="fasta", id=links$links$protein_nuccore_mrna[1])
输出如下所示:
> rec
[1] ">XM_012514791.1 PREDICTED: Octodon degus Hermansky-Pudlak syndrome 6 (Hps6), mRNA
\nATGCAGAGGAAAAACTTTATGTCATTCTTCACAGGCTTCCTGGAGAAGCGGGCCTGGCCGGAGGCCCGCG\nCCGCGCCGCTGGACGCCTTCTTCCTGGCGTGGCCGGCGCAGCCCGCGGTGGCGCTGGTGTGGGAGAGCGG (...)
有没有办法保留蛋白质 ID(XP_012370245)而不是核苷酸 ID(XM_012514791.1)?就像是:
> rec
[1] ">XP_012370245
\nATGCAGAGGAAAAACTTTATGTCATTCTTCACAGGCTTCCTGGAGAAGCGGGCCTGGCCGGAGGCCCGCG\nCCGCGCCGCTGGACGCCTTCTTCCTGGCGTGGCCGGCGCAGCCCGCGGTGGCGCTGGTGTGGGAGAGCGG (...)
我已经使用 BioMart R 包 (biomaRt) 完成了此操作,但使用rentrez 似乎更困难。
非常欢迎任何建议,谢谢!