我在自己编写的生物信息学管道中使用Python语言中的ete3(http://etetoolkit.org/)包。
在运行此脚本时,我得到以下错误。我已经在没有任何问题也没有给出任何错误的其他数据集上使用了很多这个脚本。我使用的是Python3.5和miniconda。任何解决此错误的修复/见解都将不胜感激。
错误
Traceback (most recent call last):
File "/Users/d/miniconda2/envs/py35/bin/ete3", line 11, in <module>
load_entry_point('ete3==3.1.1', 'console_scripts', 'ete3')()
File "/Users/d/miniconda2/envs/py35/lib/python3.5/site-packages/ete3/tools/ete.py", line 95, in main
_main(sys.argv)
File "/Users/d/miniconda2/envs/py35/lib/python3.5/site-packages/ete3/tools/ete.py", line 268, in _main
args.func(args)
File "/Users/d/miniconda2/envs/py35/lib/python3.5/site-packages/ete3/tools/ete_ncbiquery.py", line 168, in run
collapse_subspecies=args.collapse_subspecies)
File "/Users/d/miniconda2/envs/py35/lib/python3.5/site-packages/ete3/ncbi_taxonomy/ncbiquery.py", line 434, in get_topology
lineage = id2lineage[sp]
KeyError: 3发布于 2020-05-14 17:57:23
从注释部分继续,以获得更好的格式。
假设sp包含错误消息所建议的3 (请自己检查)。您可以根据其定义检查ete3代码(current version),可以将其跟踪到line
def get_lineage_translator(self, taxids):
"""Given a valid taxid number, return its corresponding lineage track as a
hierarchically sorted list of parent taxids.所以我去了https://www.ncbi.nlm.nih.gov/Taxonomy/Browser/wwwtax.cgi,检查了3是否是有效的taxid,但看起来不是。
# relevant section from ncbi taxonomy browser
No result found in the Taxonomy database for taxonomy id
3在我看来,您唯一的选择就是跟踪3是如何计算出来的。因为根本原因很简单,taxid 3不是函数所要求的valid taxid number。
https://stackoverflow.com/questions/61751590
复制相似问题