2010年12月19日日曜日

メモ::PHYLIPでInterleavedの配列をSequentialに

PHYLIP形式では配列の表記方法にInterleavedとSequentialというものがある。

通常系統解析をするだけならこの表記方法の違いにはあまり問題はないが、配列ファイルを弄くったり、様々なソフトを同時に使って同一の配列データを解析したりする時には結構これに悩まされる。

自分の経験では配列ファイルはsequentialの方が操作がしやすいが、主に配列エディタで使っているSeaviewで配列をPHYLIP形式で保存するとInterleaved形式でしか保存できないので、かなり困る。


以前までは正規表現使って無理矢理形式を変えたりしていたが、今日見つけたのは

「RAxMLで -f sオプションを使う」

というもの。

これは本来複数遺伝子連結データを各遺伝子に分割するためのオプションだが、これを使うときに全てのサイトがただ一つのパーティションに含まれるようなpartition fileを指定すれば、配列データは分割されずに再出力される。で、このオプションでは出力されたファイルがデフォルトでSequential形式になるというわけ。

とりあえずはこれが一番手軽な方法かねぇ。ただこの場合も配列名の長さ(11文字の制約)に気をつけなければ、RAxMLでは読み込めるがPHYLIPとかだと読み込めないとかいうことが起こるのでその点は注意。

0 件のコメント: