trimAl

 
2016 年 3 月 31日 改訂
井上 潤

trimAl はアライメント困難な領域を自動的に削除するプログラムです.Mac,Windows の両方で解析が可能です.ProAlign よりもずっと解析スピードが速くて実用的です.html 形式のファイルが出力され,アライメント困難な領域が一目で分かるのも良いです.




インストール

こちらの Commandline version の downloads をクリックして,pc に合わせたインストーラーをダウンロードします.trimAl/source に cd で入って,make と入力してください (ダウンロードして得られる README を参照).

Windows version は,trimAl/bin にある trimal.exe をコマンドプロンプトで操作します [2011 年 12 月].


例題

trimalTEST.tar.gz
script.txt にコマンドが書かれています.手順が書いてあります.「sh sctip.txt」 で解析が動くはずです.プログラム trimal をコンパイルして得られたものと交換してください (2017 年 12 月).


使い方
マニュアルはこちらにあります.オプションについてはこちらにまとめられています.

trimAl/dataset/example1.phy というファイリップ形式のアライメントを例に説明します.この .phy ファイルはプログラムをダウンロードすると同時に得られます.なお trmAl はfasta や nexus などのファイルも読み込むことができます.


コンパイルしてできた trimal を dataset フォルダにコピーしてください.その後,dataset フォルダに cd で移動して,

trimal -in example1.phy -out output1 -htmlout output1.html -gt 1

と入力すると,output1 に結果が出ています.削除した部分を output1.html をダブルクリックすることによってブラウザで見ることができます.

以上の例はギャップがあるサイトをすべて,削除してしまいます.削除をより甘くすることもできます.

trimal -in example1.phy -out output2 -htmlout output2.html -gt 0.8 -st 0.001

-gt 0.8 によって,20% 以上ギャップがあるか,あるいは similarity score が 0.001 よりも小さいサイトを削除します.

以下のように,自動的に削除するサイトを選んでくれるオプション (-gappyout) もあります.より厳しく削る場合は -strict か -strictplus を選びます.

trimal -out outputAT -htmlout outputAT.html -in example1.phy -gappyout

より細かい設定は,こちらをご覧下さい.オプションについてはこちらにまとめられています.

なお同時にコンパイルされる readal は,ファイル形式を変換するプログラムのようです.こちらをご覧下さい.

 

気付いた点
  • concatenate してから trimAL によって処理するか,あるいは遺伝子ごとに行うかで,得られる配列が若干違うようです.-gappyout でしか確認していませんが,遺伝子配列を concatenate してから trimAL によって処理を行うと,遺伝子ごとに trimAL を行って concatenate した場合よりも短い配列が得られました (遺伝子によっては,concatenate 後に trimAL で処理した方が長い配列が得られることもありました).3000 残基で 20 残基の差という若干の差であったため,手間を考えると concatenate 後に trimAL で問題ないように思えます.

cDNA 配列の削除対象サイトを取り除く


Perl: trimal_cDNAcleaner.tar.gz
Python: trimal_cDNAcleanerPYTHON.tar.gz (2017 年 12 月)


cDNA 配列の削除対象サイトを HTML で示す

$ python3 trimal_dnaHTMLmaker.py

trimal_dnaHTMLmaker.tar.gz (2017 年 11 月)


配列の被服率を算出
trimalCoverRate.tar.gz
trimalCoverRatePERL.tar.gz (2017 年 12 月)


エラーメッセージ

ERROR: The sequences in the input alignment should be aligned in order to use trimming method.

シーケンスファイルの最後の配列が,リターンで終わっていない場合に,このメッセージが出ました.配列の最後は,必ずリターンを入れておきましょう (2013 年 9 月).