- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在使用 BioPython MuscleCommanLine 来比对子进程中的序列。肌肉的输入和输出是标准输入和标准输出。这行得通,但是一旦 popen 调用 muscle,我就会在屏幕上从 muscle 获得程序摘要。这大大减慢了程序速度,因为有数百万次调用子进程。
mcline = MuscleCommandline()
read_list = (SeqRecord(Seq(seq, IUPAC.unambiguous_dna), str(index)) for index, seq in enumerate(grouped_reads_list))
muscle = Popen(str(mcline), stdin=PIPE, stdout=PIPE, universal_newlines=True)
SeqIO.write(read_list, muscle.stdin, "fasta") # Send sequences to Muscle in FASTA format.
muscle.stdin.close()
align = AlignIO.read(muscle.stdout, "fasta") # Capture output from muscle and get it into FASTA format in an object.
print(align)
muscle.stdout.close()
exit("Testin Testing")
consensus_read = AlignInfo.SummaryInfo(align).dumb_consensus(threshold=0.6, ambiguous="N", consensus_alpha=IUPAC.ambiguous_dna) # Create consensus from alignment object.
屏幕输出是
Robert C. Edgar 的 MUSCLE v3.8.31
http://www.drive5.com/muscle该软件捐赠给公共(public)领域。请引用:Edgar, R.C.核酸研究 32(5), 1792-97.
最佳答案
我将其列为答案而不是编辑我的问题,因为有人可能会发现它有用。如果我犯了错误,请告诉我。问题似乎在于以这种方式使用 BioPython MuscleCommandLine 包装器。通过子进程调用时,我无法通过包装器将任何命令行选项传递给肌肉。我为此修改的代码如下。
cmd = ['muscle', "-quiet", "-maxiters", "1", "-diags"]
read_list = (SeqRecord(Seq(seq, IUPAC.unambiguous_dna), str(index)) for index, seq in enumerate(grouped_reads_list))
muscle = Popen(cmd, stdin=PIPE, stdout=PIPE, universal_newlines=True)
SeqIO.write(read_list, muscle.stdin, "fasta") # Send sequences to Muscle in FASTA format.
muscle.stdin.close()
align = AlignIO.read(muscle.stdout, 'fasta') # Capture output from muscle and get it into FASTA format in an object.
muscle.stdout.close()
consensus_read = AlignInfo.SummaryInfo(align).dumb_consensus(threshold=0.6, ambiguous="N", consensus_alpha=IUPAC.ambiguous_dna)
return str(consensus_read)
关于linux - biopython 肌肉命令行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27455086/
我有一个字典中的蛋白质序列比对(id_prot 作为键,比对序列作为值;可以是另一种格式),我想使用这个比对来用 Biopython 构建 NJ 树 但是,根据文档,加载用于系统发育分析的序列的唯一方
我刚刚加入 python 和 biopython 工作,喜欢连接 Ensebml 并获取一些序列和其他数据,如 TSS、一些基因列表等。但我的问题是我似乎无法在 biopython 中找到任何方法或模
我想知道如何使用 biopython 库将多个 pdb 写入单个 pdb 文件。对于读取NMR结构等多个pdb,documentation中有内容但对于写作,我没有找到。有人对此有想法吗? 最佳答案
我是 Stackoverflow 的新手。我正在尝试使用 Biopython 自动化搜索过程。我有两个列表,一个是蛋白质 GI 编号,另一个是相应的核苷酸 GI 编号。 例如: 蛋白质_GI=[588
我正在尝试读取通过向 NCBIblast 网站提交多个序列而生成的 XML 文件列表。我想从每个文件中打印某些信息行。我想要读取的文件都带有后缀“_recombination.xml”。 for fi
我有一个 newick 格式的系统发育树。我想根据终端节点的标签(因此基于物种列表)拉出一棵子树。我正在使用的树的副本可以在这里找到:http://hgdownload.soe.ucsc.edu/go
import gzip import io from Bio import SeqIO infile = "myinfile.fastq.gz" fileout = open("myoutfile.f
我第一次使用biopython。如果这是一个基本问题,请原谅我。 我想输入序列,然后对齐它们,并能够引用原始序列(无间隙)和对齐序列(有间隙)的索引位置。 我的现实世界示例是烯醇 enzyme (Un
我目前正在(作为一个高级项目)构建和实现一个生物信息学 Web 应用程序来操作大数据以及一些复杂的工作 我正在使用biopython 哪种云计算平台最好,为什么? 提前致谢 最佳答案 我一直在尝试使用
Biopython 菜鸟,我正在尝试创建一个程序,该程序使用 Biopython 包 Alphabet 和字母表模块 IUPAC 将列出的类的字母写出到名为 AlphabetSoupOuput.txt
我正在尝试在 biopython 中循环运行大约 10000 对字符串的成对全局对齐方法。每个字符串平均长度为 20 个字符。为一对序列运行该方法效果很好。但是在一个循环中运行它,低至 4 对,会导致
我正在尝试为 Biopython 的朴素贝叶斯代码添加拉普拉斯平滑支持 1对于我的生物信息学项目。 我已经阅读了很多关于朴素贝叶斯算法和拉普拉斯平滑的文档,我想我已经了解了基本的想法,但我无法将其与该
我正在使用 BioPython MuscleCommanLine 来比对子进程中的序列。肌肉的输入和输出是标准输入和标准输出。这行得通,但是一旦 popen 调用 muscle,我就会在屏幕上从 mu
在讨论如何使用 Bio.SeqIO.parse() 导入序列数据时,BioPython 说明书指出: There is an optional argument alphabet to specify
我目前有以下查询 pubmed 的代码: from Bio import Entrez Entrez.email = "kuharrw@hiram.edu" # Always tell NCB
例如...我有两个脚本用于查看(多序列比对)MSA 是否具有超过 50 列且间隙少于 50%。 第一次使用 BioPython 需要 4.2 秒,在 609 列的 16281 个序列的 MSA 中(f
我正在尝试更改以前的脚本,该脚本利用 biopython 获取有关物种门的信息。编写此脚本是为了一次检索一个物种的信息。我想修改脚本,以便我可以一次对 100 个生物执行此操作。 这是初始代码 imp
在尝试使用biopython解析xml文件时,我遇到了一些我不明白的错误,有人可以帮助我理解这个错误吗? TypeError: object of type 'generator' has no le
我正在尝试将 Biopython (Entrez) 与搜索词一起使用,该搜索词将返回登录号(而不是 GI*)。 这是我的代码的一小段摘录: from Bio import Entrez Entrez.
我有一些蛋白质,我想找到它们相应的核苷酸序列。我还有发现该蛋白质的基因组。在基因组中,我找到了该蛋白质对应的基因ID。但是,我无法通过基因 ID 获取核苷酸序列。我尝试过使用 Entrez Efetc
我是一名优秀的程序员,十分优秀!