バイオインフォマティクス関連で、稀にtwoBit file (2bit file) を使用する機会がある。
通常、ゲノムファイルなどのシーケンスデータはFASTA形式で頒布されているが、一部において効率的・高速な解析のためにtwoBit fileと呼ばれる形式が使用される。
UCSCによると、「ゲノム配列を保存するのに非常に効率的な方法」であるという。中身はテキスト形式(我々が読める形)ではなく、バイナリファイルである。
FASTA を twoBit File に変換
KentUtilsを使用してPATHを通してもいいが、ここでは簡便な方法としてbiocondaを使用する方法を記述する。(こういった系統の解析ツールがKentUtilsに含まれている)
$ conda install -c bioconda ucsc-fatotwobit
condaが入った仮想環境上で実行することでインストールされる。
あとは、
$ faToTwoBit genome.fa genome.2bit
で、2bit File の拡張子をつけてやれば変換が可能。
実際にファイルサイズを確認したところ、1/3 ~ 1/4 ほどのファイルサイズになっていた。
ゲノムの情報を見るために、twoBitInfoというツールもある
$ conda install -c bioconda ucsc-twobitinfo
で、インストール可能。
おまけ: RepeatMasker の createRepeatLandscape で使う
これがやりたかったのだが、RepeatMaskerのUtilsに含まれている、createRepeatLandscape というスクリプトを実行するのにこの 2bit file が必要になる。
$ perl ~/anaconda3/envs/repeatmasker/share/RepeatMasker/util/calcDivergenceFromAlign.pl -s out.divsum [RepeatMaskerで `-a` オプションで得た.align]
$ perl ~/anaconda3/envs/repeatmasker/share/RepeatMasker/util/createRepeatLandscape.pl -div ./out.divsum -twoBit ../genome.2bit > out.html
2つ目のコマンドは -g
オプションでゲノムサイズを指定することで get a kotonaki と言われていたが、そんなこともなく正しく出力されない。そのため、ゲノムファイルを FASTA → 2bit へ変換、それを読み込ませてやることで、出力ファイルに円グラフを得ることができる。
参考
https://genome.ucsc.edu/goldenPath/help/twoBit.html
https://kazumaxneo.hatenablog.com/entry/2021/03/26/175309