NGS関連のツールのインストールといえばHomebrewが定番ですが、最近は物によってはHISAT2など、homebrewではインストール出来ないものがあったりして、これを機会にcondaちゃんに乗り換えてみることにしてみました。まずは、anaconda環境をインストール。バイオ関連はminicondaが良いという噂もあったので、こちらからpkgのインストーラをダウンロードして、解凍して普通にインストール。デフォルトだとホームフォルダの下にminiconda3フォルダができてそこにインストールされます。
次にこちらからバイオ関連のツールを使えるようになるbiocondaをインストール。マニュアルに従って最初のコマンドを打ち込んでみます。
curl -O https://repo.anaconda.com/miniconda/Miniconda3-latest-MacOSX-x86_64.sh
sh Miniconda3-latest-MacOSX-x86_64.sh
するとなにやらいきなり警告メッセージ。
WARNING:
Your operating system appears not to be 64-bit, but you are trying to
install a 64-bit version of Miniconda3.
Are sure you want to continue the installation? [yes|no]
[no] >>>
64bit OSのはずなのに??ええい、ここは無視してyesと入力!すると、何やら画面がスクロールしていくのでなんとかなっていそう。確認にはすべてyesを連打していって、とりあえず無事にbiocondaはインストールできたようです。で、またマニュアルに従ってbioconda channelを追加します。
conda config --add channels defaults
すると
zsh: command not found: conda
と非常なエラー。なぜ?なぜ?と困ったときはエラーまるごとググって調べると何やらお役立ち記事がこちらに。
最初にactivateしてinitしなくてはいけないようです。といって自分で何を書いているのかわかりませんが、とりあえずこれでクリア。ここではhomeフォルダ (nakagawa_mba)の下にminiconda3がある場合です。この二番目のおまじないがキーらしい。
source /Users/nakagawa_mba/miniconda3/bin/activate
conda init zsh
これでcondaコマンドが使えるようになったので、
conda config --add channels defaults
conda config --add channels bioconda
conda config --add channels conda-forge
あとは好きなパッケージをインストールしていきます。
conda install bwa
conda install hisat2
conda install samtools
ホームフォルダの下にNGSフォルダを作ってSNSN008A_S11_L007_R1_001.fastq.gzをおいて、HISAT2のhomepageからsplice junction情報入りのインデックスファイルgrcm38_tranシリーズをこちらからダウンロードしてホームフォルダの下にgenomeフォルダを作って放り込んで、早速hisat2を走らせると、、、
cd /Users/nakagawa_mba/NGS/
hisat2 -q -p 8 -x ../genome/grcm38_tran/genome_tran -U SNSN008A_S11_L007_R1_001.fastq.gz -S WT_total_rep1.bam
やってるやってる。Macbook Airだと流石にCPUが貧相ですが、6時間ぐらいかかってなんとかマッピングが終わりました。 で、出てきたファイルをsamtoolsでsortするかとやってみると、
samtools sort -o WT_total_rep1_sorted.bam -@ 8 WT_total_rep1.bam
Error
dyld: Library not loaded: @rpath/libcrypto.1.0.0.dylib
Referenced from: /Users/nakagawa_mba/miniconda3/bin/samtools
Reason: image not found
zsh: abort samtools
あ、これやなやつだ。dyld:云々のerrorは根が深くてこのエラーが出たときは結局諦めることが多かったのですが、ここもエラーはぐぐれで探しまくっているとなにやら関連記事が(https://www.biostars.org/p/443511/)。バージョンの問題??最新版の1.4.1ではなく、ちょっと古い1.1.0のsamtoolsを入れることにしてみます。
conda install samtools==1.10
今度は
samtools sort -o WT_total_rep1_sorted.bam -@ 8 WT_total_rep1.bam
[bam_sort_core] merging from 8 files and 8 in-memory blocks...
おおっ!動いた動いた。何が悪いかさっぱりわかりませんが、困ったらバージョン下げの手筋が効いたようです。インデックス付けを最後に行って、
samtools index WT_total_rep1_sorted.bam
無事、IGVで見ることができました。少なくともここまではBigSurでもできるということで、いつか宝くじがあたったら新しいAppleシリコン搭載MacProを購入してガシガシチーズをおろして解析してみたくなってきた今日このごろです。
追記:samtool trapという言葉があるくらいbiocondaとsamtoolsのミスマッチは有名らしいです。
The ‘samtools trap’ encountered was #bioconda by default selecting an outdated samtools with a dependency (on an outdated libcrypto) that conda doesn't represent accurately. Samtools users once again inconvenienced by this long-standing not-even-samtools-related conda bug. https://t.co/5h7pRKKfbZ
— John Marshall (@jomarnz) December 13, 2020