首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用Efetch下载_full_ RefSeq记录?

如何使用Efetch下载_full_ RefSeq记录?
EN

Stack Overflow用户
提问于 2019-03-20 16:46:21
回答 1查看 185关注 0票数 1

我在从数据库下载完整的记录时遇到了问题。我使用:

代码语言:javascript
运行
AI代码解释
复制
from Bio import Entrez
from Bio import SeqIO

with Entrez.efetch(db="nuccore", rettype="gb", retmode="full", id="NC_007384") as handle:
    seq_record = SeqIO.read(handle, "gb") 

print(seq_record)

这给了我一个简短的gb文件版本,因此命令:

代码语言:javascript
运行
AI代码解释
复制
seq_record.features

不返回功能。

相比之下,当我对GenBank ID执行相同的操作时,没有问题:

代码语言:javascript
运行
AI代码解释
复制
with Entrez.efetch(db="nuccore", rettype="gb", retmode="full", id="CP014768.1") as handle:
    seq_record = SeqIO.read(handle, "gb") 

print(seq_record)

之后,我可以从列表seq_record.features中提取每个带注释的特征。

有没有办法使用Efetch下载完整的RefSeq记录?

EN

回答 1

Stack Overflow用户

发布于 2019-03-28 16:14:07

您需要使用style="withparts"或将rettype更改为gbwithparts来获取所有功能。此table包含一些信息。

代码语言:javascript
运行
AI代码解释
复制
>>> from Bio import Entrez
>>> from Bio import SeqIO
>>> Entrez.email = 'someone@email.com'
>>> with Entrez.efetch(db="nuccore", rettype="gb", retmode="full", id="NC_007384") as handle:
...     seq_record = SeqIO.read(handle, "gb") 
... 
>>> len(seq_record.features)
1
>>> with Entrez.efetch(db="nuccore", rettype="gbwithparts", retmode="full", id="NC_007384") as handle:
...     seq_record = SeqIO.read(handle, "gb") 
... 
>>> len(seq_record.features)
10616
>>> with Entrez.efetch(db="nuccore", rettype="gb", style="withparts", retmode="full", id="NC_007384") as handle:
...     seq_record = SeqIO.read(handle, "gb")
... 
>>> len(seq_record.features)
10616
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55266054

复制
相关文章

相似问题

领券
💥开发者 MCP广场重磅上线!
精选全网热门MCP server,让你的AI更好用 🚀
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档