BioPythonで系統樹を書いてNewick出力
タイトルの通り。
MegaよりもSeaViewよりも軽いし落ちない。
#!/usr/bin/env python #coding: UTF-8 #よく使うモジュールは何も考えずに書く import sys import re import os import glob import copy import commands from bisect import bisect from Bio import SeqIO import urllib2 import datetime import matplotlib from Bio import Phylo from Bio.Phylo import NewickIO from Bio import Entrez argvs = sys.argv # コマンドライン引数を格納したリストの取得 argc = len(argvs) # 引数の個数 #name = argvs[1] from Bio.Phylo.TreeConstruction import DistanceCalculator from Bio import AlignIO aln = AlignIO.read('hogehoge.fasta', 'fasta') #print aln #SingleLetterAlphabet() alignment with 5 rows and 13 columns calculator = DistanceCalculator('identity') dm = calculator.get_distance(aln) from Bio.Phylo.TreeConstruction import DistanceCalculator, DistanceTreeConstructor constructor = DistanceTreeConstructor(calculator, 'nj') tree = constructor.build_tree(aln) print tree Phylo.write(tree, 'hugahuga.tre', 'newick')