Newick形式のファイルを修正して多分岐の系統樹を作成する

MEGAで系統樹を作成してNewick形式で保存した。この後Bootstrap値が低い分岐の部分を、多分岐の枝で記述することにした。

他のアプリケーションで適当なやり方があると思ったが、探しても見つからず。このNewick形式を手作業で編集するのが相当苦痛だったので自分用にメモ。

 

Newick形式とは

A、B、Cの三クレードの系統関係を示す場合、AとBが近縁な場合の系統樹は以下のように書く。

f:id:kiliwave:20161116195248p:plain 

無根系統樹で書いているが、ここではベーサルな位置に記述されたCの根本に根がある有根系統樹であるとする。

これをNewick形式で記述すると以下のようになる。

((A,B),C);

クレード間は「,」で区切って、近縁な姉妹群ほど内側の()で囲むようにする。
末端には「;」を記述して、終端文字とする。

クレードごとの枝の長さ(=遺伝的距離)を表現するには、それぞれのクレード名の後に「:」を付けて表記する。

例えば以下のような枝の長さの系統樹の場合は、

f:id:kiliwave:20161116195523p:plain

((A:10,B:10) :20,C:30);

のように表現する。

ブートストラップ値を記述するには、表記する姉妹群の根本にあたる ) の後ろにそのまま数字を書く。例えば以下のようにAとBの近縁性を90%のブートストラップ値で支持する系統樹の場合

f:id:kiliwave:20161116200321p:plain

((A:10,B:10)0.9,C:30);

のような表現となる。値は小数で書かれている場合しか見たことが無い。

多分岐の系統樹では、3つ以上の姉妹群を「,」で区切って並記させる。

f:id:kiliwave:20161116200608p:plain

例えば上記の系統樹をNewick形式で記述すると以下のようになる。

((A,B,C),D);

まとめると、以下のような系統樹の場合は、

f:id:kiliwave:20161116200757p:plain

((A:10,B:11,C:12)0.99:5,D:17);

のような表記となる。

系統樹で見るとシンプルでも、Newick形式では慣れないとイメージし辛い。

 

Newick形式で一部の枝を多分岐に変更する場合の操作

多分岐の系統樹に修正する場合は、枝長を再計算しどのような樹形に変わるかを考える必要がある。以下に例を示す。

A、B、C、Dの系統関係を示す樹を作成したとする。

f:id:kiliwave:20161116201742p:plain

d1~d6が枝長、AとBの近縁性を支持するブートストラップ値が13、CとABの共通祖先の近縁性を支持するブートストラップ値が99だったとする。Newick形式では

(((A:d1,B:d2)0.13:d3,C:d4)0.99:d5,D:d6);

となる。

ブートストラップ値13は低いため、AとBの近縁性は十分ではないと考え、ABCが多分岐の系統樹に修正する。

f:id:kiliwave:20161116202125p:plain

つまり上記のような系統樹となる。暫定的にAとBの共通祖先からの枝長をQ1とQ2とした。Newick形式では、

((A:Q1,B:Q2,C:d4)0.99:d5,D:d6);

Dからの遺伝的距離はどれも変わらないはずなので、

Q1=d1+d3
Q2=d2+d3

となる。よって、

((A:d1+d3,B:d2+d3,C:d4)0.99:d5,D:d6);

と表現できる。

後はこれらを手で直すだけとなる。

しかし複雑な系統樹になるほど、Newick形式のどこを修正するべきか判断し辛い。だからNewick形式を若干見やすくなるよう工夫してみた。

 

以下に続く

kiliwave.hatenablog.com

参考文献

以下のサイトで勉強させていただいた。