BioPython:使用Entrez.esummary / Entrez.read跳过不良的GID
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了BioPython:使用Entrez.esummary / Entrez.read跳过不良的GID,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1009字,纯文字阅读大概需要2分钟。
内容图文
对不起,奇怪的标题.
我正在使用eSearch&电子摘要来自
登记号-> gID->税号
假设“登录号”是20个登录号的列表(我一次执行20个登录号,因为这是NCBI允许的最大值).
我做:
handle = Entrez.esearch(db="nucleotide", rettype="xml", term=accessions)
record = Entrez.read(handle)
gids = ",".join(record[u'IdList'])
这使我从这20个登录号中获得了20个对应的GID.
其次是:
handle = Entrez.esummary(db="nucleotide", id=gids)
record = Entrez.read(handle)
这给了我这个错误,因为gid中的一个GID已从NCBI中删除:
File ".../biopython-1.52/build/lib.macosx-10.6-universal-2.6/Bio/Entrez/Parser.py", line 191, in endElement value = IntegerElement(value)
ValueError: invalid literal for int() with base 10: ''
我可以尝试::,除了:否则可以跳过其他19个GID,这是可以的.
我的问题是:
如何使用Entrez.read一次读取20条记录,并在不牺牲其他20条记录的情况下跳过那些丢失的记录?我可以一次执行一次,但是速度会非常慢(我有30万个登录号,而NCBI仅允许您每秒执行3个查询,但实际上,它更像是每秒1个查询).
解决方法:
我向BioPython邮件列表发送了一条消息.显然这是一个错误&他们正在努力.
内容总结
以上是互联网集市为您收集整理的BioPython:使用Entrez.esummary / Entrez.read跳过不良的GID全部内容,希望文章能够帮你解决BioPython:使用Entrez.esummary / Entrez.read跳过不良的GID所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。