本文整理汇总了Python中Bio.Align.Applications.PrankCommandline.f方法的典型用法代码示例。如果您正苦于以下问题:Python PrankCommandline.f方法的具体用法?Python PrankCommandline.f怎么用?Python PrankCommandline.f使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Bio.Align.Applications.PrankCommandline
的用法示例。
在下文中一共展示了PrankCommandline.f方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_Prank_simple_with_NEXUS_output
# 需要导入模块: from Bio.Align.Applications import PrankCommandline [as 别名]
# 或者: from Bio.Align.Applications.PrankCommandline import f [as 别名]
def test_Prank_simple_with_NEXUS_output(self):
"""Simple round-trip through app with infile, output in NEXUS
output.?.??? files written to cwd - no way to redirect
"""
records = list(SeqIO.parse(self.infile1, "fasta"))
#Try using keyword argument,
cmdline = PrankCommandline(prank_exe, d=self.infile1, noxml=True)
#Try using a property,
cmdline.d = self.infile1
cmdline.f = 17 # NEXUS format
cmdline.set_parameter("notree", True)
self.assertEqual(str(cmdline), _escape_filename(prank_exe) +
" -d=Fasta/fa01 -f=17 -noxml -notree")
self.assertEqual(str(eval(repr(cmdline))), str(cmdline))
stdout, stderr = cmdline()
self.assertTrue("Total time" in stdout)
self.assertEqual(stderr, "")
try:
align = AlignIO.read("output.2.nex", "nexus")
for old, new in zip(records, align):
#Old versions of Prank reduced name to 9 chars
self.assertTrue(old.id == new.id or old.id[:9] == new.id)
#infile1 has alignment gaps in it
self.assertEqual(str(new.seq).replace("-", ""),
str(old.seq).replace("-", ""))
except NexusError:
#See bug 3119,
#Bio.Nexus can't parse output from prank v100701 (1 July 2010)
pass
示例2: test_Prank_simple_with_NEXUS_output
# 需要导入模块: from Bio.Align.Applications import PrankCommandline [as 别名]
# 或者: from Bio.Align.Applications.PrankCommandline import f [as 别名]
def test_Prank_simple_with_NEXUS_output(self):
"""Simple round-trip through app with infile, output in NEXUS
output.?.??? files written to cwd - no way to redirect
"""
records = list(SeqIO.parse(open(self.infile1),"fasta"))
#Try using keyword argument,
cmdline = PrankCommandline(prank_exe, d=self.infile1, noxml=True)
#Try using a property,
cmdline.d = self.infile1
cmdline.f = 17 # NEXUS format
cmdline.set_parameter("notree", True)
self.assertEqual(str(cmdline), prank_exe + \
" -d=Fasta/fa01 -f=17 -noxml -notree")
self.assertEqual(str(eval(repr(cmdline))), str(cmdline))
result, stdout, stderr = Application.generic_run(cmdline)
self.assertEqual(result.return_code, 0)
self.assert_("Total time" in stdout.read())
self.assertEqual(stderr.read(), "")
self.assertEqual(str(result._cl), str(cmdline))
out_handle = open("output.2.nex", "r")
align = AlignIO.read(out_handle, "nexus")
out_handle.close()
for old, new in zip(records, align) :
#Prank automatically reduces name to 9 chars
self.assertEqual(old.id[:9], new.id)
#infile1 has alignment gaps in it
self.assertEqual(str(new.seq).replace("-",""),
str(old.seq).replace("-",""))
示例3: test_Prank_simple_with_NEXUS_output
# 需要导入模块: from Bio.Align.Applications import PrankCommandline [as 别名]
# 或者: from Bio.Align.Applications.PrankCommandline import f [as 别名]
def test_Prank_simple_with_NEXUS_output(self):
"""Simple round-trip through app with infile, output in NEXUS
output.?.??? files written to cwd - no way to redirect
"""
records = list(SeqIO.parse(self.infile1, "fasta"))
# Try using keyword argument,
cmdline = PrankCommandline(prank_exe, d=self.infile1)
# Try using a property,
cmdline.d = self.infile1
cmdline.f = 17 # NEXUS format
cmdline.set_parameter("dots", True)
self.assertEqual(str(cmdline), _escape_filename(prank_exe) + " -d=Fasta/fa01 -f=17 -dots")
self.assertEqual(str(eval(repr(cmdline))), str(cmdline))
stdout, stderr = cmdline()
self.assertTrue("Total time" in stdout)
self.assertEqual(stderr, "")
try:
if os.path.isfile("output.best.nex"):
# Prank v.130820 and perhaps earlier use ".best.*" output names
nex_fname = "output.best.nex"
elif os.path.isfile("output.2.nex"):
# Older Prank versions use ".2.*" output names
nex_fname = "output.2.nex"
else:
raise RuntimeError("Can't find PRANK's NEXUS output (*.nex)")
align = AlignIO.read(nex_fname, "nexus")
for old, new in zip(records, align):
# Old versions of Prank reduced name to 9 chars
self.assertTrue(old.id == new.id or old.id[:9] == new.id)
# infile1 has alignment gaps in it
self.assertEqual(str(new.seq).replace("-", ""), str(old.seq).replace("-", ""))
except NexusError:
# See bug 3119,
# Bio.Nexus can't parse output from prank v100701 (1 July 2010)
pass
示例4: test_Prank_simple_with_NEXUS_output
# 需要导入模块: from Bio.Align.Applications import PrankCommandline [as 别名]
# 或者: from Bio.Align.Applications.PrankCommandline import f [as 别名]
def test_Prank_simple_with_NEXUS_output(self):
"""Simple round-trip through app with infile, output in NEXUS
output.?.??? files written to cwd - no way to redirect
"""
records = list(SeqIO.parse(open(self.infile1), "fasta"))
# Try using keyword argument,
cmdline = PrankCommandline(prank_exe, d=self.infile1, noxml=True)
# Try using a property,
cmdline.d = self.infile1
cmdline.f = 17 # NEXUS format
cmdline.set_parameter("notree", True)
self.assertEqual(str(cmdline), prank_exe + " -d=Fasta/fa01 -f=17 -noxml -notree")
self.assertEqual(str(eval(repr(cmdline))), str(cmdline))
child = subprocess.Popen(
str(cmdline), stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=(sys.platform != "win32")
)
return_code = child.wait()
self.assertEqual(return_code, 0)
self.assert_("Total time" in child.stdout.read())
self.assertEqual(child.stderr.read(), "")
align = AlignIO.read(open("output.2.nex"), "nexus")
for old, new in zip(records, align):
# Prank automatically reduces name to 9 chars
self.assertEqual(old.id[:9], new.id)
# infile1 has alignment gaps in it
self.assertEqual(str(new.seq).replace("-", ""), str(old.seq).replace("-", ""))
del child