【问题标题】:muscle from biopython Non-zero return code 137来自 biopython 的肌肉非零返回码 137
【发布时间】:2016-09-21 08:44:10
【问题描述】:

我是 python 领域的新手,但我想使用 biopython 来对齐一些 DNA 序列。我从互联网上得到了一个脚本,并按如下方式运行它(~ 是我的主路径的缩写):

~$ python
Python 3.5.1 (default, Jul  3 2016, 12:57:35)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from Bio.Align.Applications import MuscleCommandline
>>> muscle_exe = r"/usr/bin/muscle"
>>> in_file = r"~/SpiderOak Hive/LAB/Lab book/Ery/Seqs/tester.fasta"
>>> out_file = "~/SpiderOak Hive/LAB/Lab book/Ery/Seqs/tester_aligned.fasta"
>>> muscle_cline = MuscleCommandline(muscle_exe, input=in_file, out=out_file)
>>> print(muscle_cline)
/usr/bin/muscle -in "~/SpiderOak Hive/LAB/Lab
book/Ery/Seqs/tester.fasta" -out "~/SpiderOak Hive/LAB/Lab
book/Ery/Seqs/tester_aligned.fasta"

但是在启动应用程序时我得到了:

>>> muscle_cline()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/opt/python3.5/lib/python3.5/site-packages/Bio/Application/__init__.py",
line 516, in __call__
    stdout_str, stderr_str)
Bio.Application.ApplicationError: Non-zero return code 137 from
'/usr/bin/muscle -in "/home/gigiux/SpiderOak Hive/LAB/Lab
book/Ery/Seqs/tester.fasta" -out "/home/gigiux/SpiderOak Hive/LAB/Lab
book/Ery/Seqs/tester_aligned.fasta"', message 'MUSCLE v3.8.31 by
Robert C. Edgar'
>>>

会有什么问题?我在网上看到这可能是由于内存问题;在那种情况下,代码可以吗?以及如何运行大型对齐?

还有:我为什么要使用 = r"path" 而不是简单的 "path"?

非常感谢,

路易吉

【问题讨论】:

标签: biopython


【解决方案1】:

您的代码似乎是正确的,它适用于小对齐。 137 状态码可能与 this question 中的“内存不足”杀死有关。使用命令 dmesg 检查最后的内核消息,查找以下行:

kernel: Out of memory: Kill process 52959 (java) score 164 or sacrifice child

【讨论】:

    猜你喜欢
    • 2018-01-16
    • 2020-05-24
    • 2013-11-07
    • 1970-01-01
    • 2019-10-12
    • 2013-11-02
    • 2021-11-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多