#STAR-fusionいいよって聞いたから、動かそうと思った
融合遺伝子検出をしようと思って色々考えていたのだけど、やはりMappingに依存することがわかっているので、STARベースにしようと決めました。
そうそう、Mappingで非モデル生物においてpseudo Mappingはまともに機能していませんので、使っちゃだめですよ。
ちなみに決め手はこの論文。
https://genomebiology.biomedcentral.com/articles/10.1186/s13059-019-1842-9
元々出てきたときも凄い良いって話が多く、流石Broadだけあってパッケージの提供やアップデートが盛んで安心。
豚で実装したという報告も見たし、こりゃ楽勝だろうと思っていました。
これが地獄の始まりだった
##依存パッケージ多すぎ問題
詳しくはここにインストール方法が書かれている。
https://github.com/STAR-Fusion/STAR-Fusion/wiki/installing-star-fusion
STARとSamtoolsくらいならもう入れてあるし、まあこれくらいなら余裕かなーと思ってみると、エラー。
なんとSTAR-Fusionのバージョンによって使えるSTARのバージョンに違いがあるとのこと。
しかも細かい。
https://github.com/STAR-Fusion/STAR-Fusion/wiki/STAR-Fusion-release-and-CTAT-Genome-Lib-Compatibility-Matrix
しかも僕が犬で動作保証したバージョンは入っていないという悲惨さ。
うん、煩雑すぎるしバージョンを挙げるのが辛すぎるね。
##バージョンで泣かされるならSingularityを使えばよいじゃない
Singularityはコンテナイメージの一つで、言ってしまえばソフトが動いた環境を丸ごと持ってきてパッケージ化したようなもの。
(感覚で使っているから説明が正しいかわからない)
まあでも作者たちも推奨しているので、使わない手はないよね?
ということで遺伝研のBiotoolsの中を覗いてみると、あるある。
そして起動してみると、
singularity exec -e star-fusion\:1.10.0--hdfd78af_1 /usr/local/lib/STAR-Fusion/ctat-genome-lib-builder/prep_genome_lib.pl --CPU 8 --genome_fa ~/share/CanFam3.1_transcript/Canis_familiaris.CanFam3.1.dna.toplevel.fa --gtf ~/share/CanFam3.1_transcript/Canis_familiaris.CanFam3.1.98.gtf --pfam_db ./Pfam-A.hmm.gz --dfam_db ./Dfam.hmm.gz
-found STAR at /usr/local/bin/STAR
-found makeblastdb at /usr/local/bin/makeblastdb
-found blastn at /usr/local/bin/blastn
- *** ERROR, cannot locate required tool in PATH setting: dfamscan.pl ***
- *** ERROR, cannot locate required tool in PATH setting: nhmmscan ***
- *** ERROR, cannot locate required tool in PATH setting: hmmscan ***
* Running CMD: cp /share/CanFam3.1_transcript/Canis_familiaris.CanFam3.1.dna.toplevel.fa /share/STAR_Fusion/ctat_genome_lib_build_dir/ref_genome.fa
どういうことだ、singularityのイメージなのにhmmerのソフトのPATHが無いだと?
DockerのMakeを読んでみると、全て/usr/local/lib/
に置くようになっている。
なのでsingularity shell -e
で確認してみると…ソフトが無い。
んなアホな。
##結局基本に忠実に行く羽目になる
まずBroadからSingularityのイメージを取得。
https://data.broadinstitute.org/Trinity/CTAT_SINGULARITY/
Dfam.hmm.gzではデータが多すぎて止まるので、人のデータのみのhmmファイルを取得して、実施。
https://www.dfam.org/releases/current/infrastructure/dfamscan/
そしてPfam.hmm.gzだと動かないので、事前に解凍してsingularity shellでhmmpressを実行。
gunzip -d Pfam.hmm.gz > Pfam.hmm
singularity shell -e star-fusion.v1.10.0.simg
hmmpress Pfam.hmm
exit
singularity exec -e star-fusion.v1.10.0.simg /usr/local/src/STAR-Fusion/ctat-genome-lib-builder/prep_genome_lib.pl --CPU 8 --genome_fa ~/share/CanFam3.1_transcript/Canis_familiaris.CanFam3.1.dna.toplevel.fa --gtf ~/share/CanFam3.1_transcript/Canis_familiaris.CanFam3.1.98.gtf --pfam_db ./Pfam-A.hmm --dfam_db human
余談だけど、dfamのデータベースは生物種(e.g. human, mouse)で指定できる。
これでようやくデータベースの作成が可能に。
んでどんな融合遺伝子が取れのかって?
これからやるんだよ!