RNA-seqその1、インストール
wsl上でRNA-seqの解析を行う
手順を教えてもらったのでそのメモ
メモするのは
- コマンドのインストール(このページ)
- RNA-seqその2、データのダウンロードと変換 - mecobalamin’s diary
- RNA-seqその3、trimmomatic - mecobalamin’s diary
- RNA-seqその4、Fastqファイルのマージ - mecobalamin’s diary
- RNA-seqその5、Hisat2でマッピング - mecobalamin’s diary
- RNA-seqその6、featureCountsでリードカウント - mecobalamin’s diary
- RNA-seqその7、TrinityでアセンブルしてBlastにかける - mecobalamin’s diary
- RNA-seqその8、edgeRを使ったTMM正規化 - mecobalamin’s diary
- RNA-seqその9、DESeq2を使った正規化 - mecobalamin’s diary
- RNA-seqその10、Dockerで環境構築 - mecobalamin’s diary
教えてもらったのは1-7まで。
8と9はウェブから情報を集めて自分でやってみた。
それと表示に必要なJBrowseのインストールなど
- JBrowseのインストール、三度目の正直 - mecobalamin’s diary
- JBrowseでbamファイルを表示する - mecobalamin’s diary
- bigwigの作成と表示 - mecobalamin’s diary
- JBrowseにplug-inを追加する - mecobalamin’s diary
- hg38のfastaとgtf/gff3 - mecobalamin’s diary
ファイルの整形だったりクオリティのチェックだったり
他にもやっているけど大まかにはこんなところ
目的は実行に使うコマンドが動くコードを記録すること
教えてもらった元のコードはクラスターコンピュータで動いていた
そのコードをノートPCのwslで動くように書き換えた
コードの検証のため計算結果とグラフを載せるが、
結果の検証は実力不足でできてない(特に自分でやってみた正規化のあたり)
コードが動く ≠ 計算結果が正しい、ということに注意したい
Dockerで環境を統一できたら
結果の検証に集中できると思う(けどやってない)
ここではwslでの実行に必要なコマンドのインストールと設定を記載する
このあたりのサイトも参考にした
RNA-Seq | 遺伝子発現量解析
使用しているpcのスペック
CPU: Intel Core i5-7200U CPU @ 2.5 GHz
Memory: 24.0 GB (8 GB + 16 GB)
Storage: 250 GB SSD + 500 GB HDD -> 960 GB SDD + 1 T SSD
OS: Windows 10 Home version 1803 build 17134.523
WSL: 18.04.1 LTS
メモリを増設してあるがいたって普通のノートPC、
と思っているけどそうでもないらしい
【山田祥平のRe:config.sys】普通のPCが普通に買えない - PC Watch
CPUはこのスペックでも1日とかで終わってくれる
メモリとストレージは多いほどいいけどノートPCだとちょっと厳しいか
SSDも安くなってきてるからいずれ交換できればいいが。
それとwslはファイルのやり取りがものすごく遅いらしいので
HDDよりはSDD、外付けよりも内蔵のストレージを使いたいが問題がある
いくつかのコマンドはファイルの読み書きがとても多く
タスクマネージャーを見てるとSSDの寿命に影響しそう
1日中ディスクにアクセスとかやってくれる
なのでRAMディスク、外付けストレージをうまく使う
あとwslを使うときの注意点がある
ファイルシステムの関係でwindows側からwslのファイルを編集してはいけないらしい
実際ファイルがおかしくなったことがあった
今後のアップデートで変わる可能性があるらしいけど、現状は不可っぽい
出力されたファイルや設定ファイルなどをwindowsのエディタ等から編集しない
編集する場合はファイルをコピーして行う
次にコマンド・プログラムのインストールについて。
wslでインストールするコマンドと
windowsにインストールするプログラムとがある
wslにインストールするのは
windowsにインストールするのは
- R
- Rのライブラリ
まずwslで使用するコマンドのインストールする
アーカイブのダウンロードして、解凍、リンクを貼る、
ということをコマンド毎にする
コマンドのダウンロードはwgetを使う
【 wget 】コマンド――URLを指定してファイルをダウンロードする:Linux基本コマンドTips(24) - @IT
ダウンローダーは他にもあるようですが。。。
解凍は圧縮形式に合わせる
【 tar 】コマンド――アーカイブファイルを作成する/展開する:Linux基本コマンドTips(40) - @IT
【 unzip 】コマンド――ZIPファイルからファイルを取り出す:Linux基本コマンドTips(35) - @IT
リンクは$HOME/usr/localに展開したコマンドファイルから
パスの通っている$HOME/binにシンボリックリンクを貼っている
細かいルールを知らないので自己流かもだけど。。。
ちなみにwslでパスは$HOME/.bashrcに記入する
export PATH="$HOME/bin:$HOME/miniconda3/bin:$PATH"
ファイルがなければ作る
bashでパスを書く設定ファイルの選び方にも
なんかルールがあるっぽいがとりあえず。
パスは先に書かれている方から優先順位が高い
実際にコマンドをインストールする
- sra toolkit
NCBIにアップロードされている
シークエンスのデータはsra形式になっている
これを展開するにはsra toolkitを使う
ダウンロード先と参考にしたサイトはこちら
https://www.ncbi.nlm.nih.gov/sra/docs/toolkitsoft/
NCBI SRA Toolkitの使い方 - アメリエフのブログ
$ wget https://ftp-trace.ncbi.nlm.nih.gov/sra/sdk/current/sratoolkit.current-ubuntu64.tar.gz
$ tar -zxvf sratoolkit.current-ubuntu64.tar.gz
シンボリックリンクを貼る
$ cp sratoolkit.2.9.2-ubuntu64/ ~/usr/local/ $ cd ~/bin $ ln -fs $HOME/usr/local/sratoolkit.2.9.2-ubuntu64/bin/fastq-dump ./
- prinseq-lite, FastQC, featureCount
prinseq-liteとFastQCもインストールしてリンクを貼る
prinseq-lite
PRINSEQ - Browse /standalone at SourceForge.net
PRINSEQ @ SourceForge.net
[Download] -> [Standalone] -> [prinseq-lite-0.20.4.tar.gz]をダウンロードする
prinseq-lite.plのパーミッションを変更する
FastQC
Babraham Bioinformatics - FastQC A Quality Control tool for High Throughput Sequence Data
[Download Now] -> [FastQC v0.11.8 (Win/Linux zip file)]をダウンロードする
展開したファイルのfastqcのパーミッションを変更する
$ chmod 755 fastqc
featureCountも同様にインストールする
mecobalamin.hatenablog.com
- miniconda
次にminicondaを使ってpythonコマンドをインストールする
trimmomaticとtrinityはbiocondaのパッケージのひとつで、
minicondaをまずインストールして必要なパッケージを追加する
anacondaとminicondaの比較
https://echomist.com/anaconda-vs-miniconda/
minicondaは3.x系をインストールする
RNA-seqで使うコマンドによっては2.x系が必要な場合もあるが、
その時は2.x系の環境をつくってインストールする
念の為minicondaのpython3から$HOME/binにリンクを張って3.x系を使うようにしておく
$ ln -s $HOME/miniconda/bin/python $HOME/bin
minicondaの配布元とインストール用シェルスクリプトのアドレス
Miniconda — Conda documentation
https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh
シェルスクリプトをダウンロードして実行する
$ wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh $ bash Miniconda3-latest-Linux-x86_64.sh
実行後はターミナルを再起動してパスを読み込ませる
.bashrcにパスが書かれている場合はを.bashrcを再読込する
.bashrcの再読込のコマンドはこれ
$ source $HOME/.bashrc
- anaconda package, Trinity、fastq-stats、numpy、hisat2及びstringtie
パッケージはここからインストール元を探す
https://anaconda.org/
パッケージ名で検索をかけてダウンロード方法を探す
例えばtrimmomaticならインストール元はここで
Trimmomatic :: Anaconda Cloud
インストール方法を見るとこう書かれてる
$ conda install -c bioconda trimmomatic
biocondaはchannel名で、trimmomaticがpackage名で、
channelが登録されているかを確認するには
$ conda config --get channel
登録されてなければ次のようにして登録する
$ conda config --add channel <channel名>
チャンネルによってインストールされる内容が違っていたりする
一緒にインストールされるパッケージのバージョンが変わったり
インストールされたりされなかったりもある
必要なパッケージが揃っているかの確認も必要
追加するのはTrinity、ea-utils、fastq-stats、numpy、hisat2及びstringtie
$ conda install -c bioconda trinity $ conda install -c bioconda ea-utils $ conda install -c bioconda numpy $ conda install -c bioconda hisat2 $ conda install -c bioconda stringtie
- salmon
trinityでsalmonを使うが、biocondaから配布されているのは
バージョンが古い(v0.8.1)のでオリジナルの配布元から
binaryをダウロードして使う(v.0.12.0)
Overview – Salmon: Fast, accurate and bias-aware transcript quantification from RNA-seq data
$ wget https://github.com/COMBINE-lab/salmon/releases/download/v0.12.0/salmon-0.12.0_linux_x86_64.tar.gz
miniconda3/binにリンクを貼る
$ cp salmon-0.12.0_linux_x86_64/ $HOME/usr/local/ $ ln -s $HOME/usr/local/salmon-0.12.0_linux_x86_64/bin/salmon $HOME/miniconda3/bin/
先にv0.8.1のリンクがbinに貼られている場合はlnコマンドの前にリンクを解除する
$ unlink $HOME/miniconda/bin/salmon
29 May 2019追記
hisat2とstringtieを上記のコマンドでインストールすると
pythonのバージョンを2.7にしていたようだ
確認不足だった
この2つのコマンドはバイナリーを使ったほうがいいかも
hisat2
https://ccb.jhu.edu/software/hisat2/index.shtml
バイナリーのリンク
http://ccb.jhu.edu/software/hisat2/dl/hisat2-2.1.0-Linux_x86_64.zip
stringtie
StringTie
バイナリーのリンク
http://ccb.jhu.edu/software/stringtie/dl/stringtie-1.3.6.Linux_x86_64.tar.gz
それぞれwgetでダウンロードしてファイルを展開、
$HOME/binにシンボリックリンクを貼る
condaでインストールして使う場合はpython3とpython2の環境を分ける
別に記事を書く
mecobalamin.hatenablog.com
追記ここまで
23 April 2020 追記
Hisat2とstringtieをインストールしたら
python3にインストールされた
もしかしたら切り替えが必要なくなったのかも
追記ここまで
これで全部、のはず。。。
足りないのは適宜インストールする
インストールしたはずのパッケージが見つからない時がある
condaは3.xでそっちにインストールしているのに
wslに元から入っているpythonが2.xだったりして
パスの関係でwslのpythonで実行されていると見つからないってなる
以前そんな事があって、そのときはパスの優先順位を変えた
mecobalamin.hatenablog.com
pipを使う方法もあるが、anacondaと併用してはいけないそうだ
注意することかも
condaとpip:混ぜるな危険 - onoz000’s blog
次にwindowsで動かすプログラム
- R
Windows版をインストールする
The Comprehensive R Archive Network
RGuiか、AtomでR scriptでRのスクリプトを実行できるようにする
- edgeR
Rに必要なライブラリをインストールする
bioconductorを利用してインストールする
mecobalamin.hatenablog.com
- Atom (必要なら)
エディタで、パッケージの追加でRコマンドをスクリプトを書きつつ実行できる
atom.io
学生の頃はEmacsだったけど宗旨替え
wslではvi
/path/to/R/R-3.x.x/Rscript.exeにwindowsの環境変数でパスを通す
Rのアップデートをするたびに通し直す
mecobalamin.hatenablog.com
- script
- language-r
scriptでRを実行するのに必要
ATOMをR言語に対応させる方法 - Qiita
パッケージの更新が遅れているようで
設定ファイルにエラーが残ってるがそのままでも問題ない
修正方法もあったので直してあるけどそのサイトが見つからない。。。