読者です 読者をやめる 読者になる 読者になる

biocondaを利用してNGS関連のソフトウェアを一括でインストールする

bioconda R Python NGS バイオインフォマティクス パッケージマネージャー

概要

biocondaと呼ばれるパッケージマネージャーを用いて、バイオインフォマティクス関連のソフトウェアのインストールから、バージョン管理までを行うことができます。

バイオインフォマティクスの解析環境を用意しようと思っているなら、自力でソフトウェアをインストールするのではなく、biocondaを利用したほうが圧倒的に楽です(MEMEやCircosなどインストールに手間取るソフトウェアが一行のコマンドでインストールできちゃう)。

biocondaには現在、15,000以上のBiology関連のソフトウェア・パッケージが登録されており、おおむね、どのソフトウェアに関しても最新バージョンがインストールできる環境が整備されているみたいです。

ただし、パッケージが充実しているのはLinux版で、MacOS版はbiocondaの(インストールの)レシピが充実していない印象です。 なので、biocondaを導入する対象はLinux OSであることが望ましいと思います。

f:id:biodata:20170113232841p:plain

内容

基本的に、こちらのbioconda公式サイトにインストール方法が記述されているので、詳しくはこちらを参照のこと。
https://bioconda.github.io/

インストール方法

1. minicondaをインストールする(Anacondaというのもありますが、minicondaのほうはその最小構成版になっています。余計なパッケージをはじめから入れさせないためにminicondaを選択したほうがよいかもしれません)。

Python3がおすすめと書いてあるが、NGS関連のソフトウェアはpython2でコーディングされているものも多いため、python2の方を選択する。
http://conda.pydata.org/miniconda.html

f:id:biodata:20170114100426p:plain

2. 上記のURLからシェルスクリプトをダウンロードし、実行する。
ここでは、64bit版のPython2の環境を選択してインストールしています。

$ wget https://repo.continuum.io/miniconda/Miniconda2-latest-Linux-x86_64.sh
$ bash Miniconda2-latest-Linux-x86_64.sh

いろいろ聞かれるが、基本的にEnterを押すか、Yesを入力すればいい。

最終的に、カレントディレクトリにminiconda2というディレクトリができており、.bashrcに以下の文が追加されているはずです。

> .bashrc
# added by Miniconda2 4.2.12 installer
export PATH="/home/user/miniconda2/bin:$PATH"

最後の質問で、Noを選択すると、上記の文が追加されません。
その場合、自身で上記の文を記述して、miniconda2/binにパスを通す必要があります。

3. インストール終了後、.bashrcを再読み込み。

$ source ~/.bashrc

4. condaが正常にインストールされたかどうかチェック。 エラーが返ってこなければOK。

$ conda -h

5. biocondaのチャンネルを追加。biocondaチャンネルが最上位に来るように設定。

$ conda config --add channels conda-forge
$ conda config --add channels defaults
$ conda config --add channels r
$ conda config --add channels bioconda

6.任意のパッケージ・ソフトウェアをインストール。

$ conda install cutadapt
$ conda install meme
$ conda install fastqc
$ conda install fastx_toolkit
$ conda install bowtie
$ conda install bowtie2
$ conda install prinseq
$ conda install circos
$ conda install tophat
$ conda install cufflinks
$ conda install samtools
$ conda install bedtools
$ conda install sra-tools
$ conda install trimmomatic
$ conda install paralyzer
$ conda install star
$ conda install rsem
$ conda install bwa
$ conda install picard
$ conda install subread
$ conda install entrez-direct
$ conda install art
$ conda install macs2
$ conda install htseq
$ conda install rseqc

biocondaに登録されているパッケージ群のリストは下記のサイトからチェックできる。
https://bioconda.github.io/recipes.html

インストール時の注意点

biocondaをインストールする際に、PYTHONPATH.bashrcに記載されていると、うまくインストールされない。

インストールチェックを行うと、エラーが発生する。

$ conda -h
Traceback (most recent call last):
  File "/home/akimitsu/miniconda3/bin/conda", line 4, in <module>
    import conda.cli
ImportError: No module named 'conda'

対処法としては、.bashrc中でPYTHONPATHをExportしている箇所をコメントアウトする。ターミナルを再起動・再ログインしてから、再インストールする。

# コメントアウト
# export PYTHONHOME=/usr/local/package/python2.7/current
# export PYTHONPATH=/home/user/software/python_path27/lib/python2.7/site-packages
# export PATH=/home/user/software/python_path27/bin:${PYTHONHOME}/bin:${PATH}
# export LD_LIBRARY_PATH=/home/user/software/python_path27/lib:${PYTHONHOME}/lib:${LD_LIBRARY_PATH}

biocondaに登録されているパッケージのインストールに関する注意点

python2に依存しているパッケージは、python3環境下ではインストールできない。 そのため、以下で説明するPython2用の仮想環境を構築するか、python2向けのminicondaを再インストールする必要がある。

$ conda install macs2
Fetching package metadata .............
Solving package specifications: ....
UnsatisfiableError: The following specifications were found to be in conflict:
  - macs2
  - python 3.5*
Use "conda info <package>" to see the dependencies for each package.

python2に依存しているパッケージ例

conda install macs2
conda install htseq
conda install rseqc

biocondaの環境をチェック

biocondaでインストールしたパッケージは、conda listで確認できる。

$ conda list
# packages in environment at /home/akimitsu/miniconda2:
#
art                       3.19.15                       1    bioconda
bcftools                  1.3.1                         1    bioconda
bedtools                  2.26.0                        0    bioconda
bowtie                    1.2.0                    py27_0    bioconda
bowtie2                   2.3.0                    py27_0    bioconda
bwa                       0.7.15                        0    bioconda
bx-python                 0.7.3                    py27_0    bioconda
bzip2                     1.0.6                         3
cairo                     1.14.6                        0
cffi                      1.9.1                    py27_0
circos                    0.69.2                        0    bioconda
...

python2向けのbiocondaでpython3を使う

python3を動かすための仮想環境を構築することができる。 以下では、py35という名前のpython3.5がインストールされた仮想環境を作っている。

$ conda create --name py35 python=3.5

--nameで仮想環境の名前を指定、 python=Pythonのバージョンを指定する。
condaでは現在、Python 2.7, 3.4, 3.5に対応している。

Managing Python — Conda documentation

登録した環境設定を確認する。

$ conda info --envs
# conda environments:
#
py35                     /home/your_name/miniconda2/envs/py35
root                  *  /home/your_name/miniconda2

環境の切り替え。

# py35に入る
source activate py35

# py35から抜ける
source deactivate py35

これを利用して、プロジェクトごとに環境を用意して特定のパッケージ・バージョンで解析を行うこともできます。

CRANに登録されているRパッケージをインストールする

biocondaに登録されていないPythonやRのパッケージは、pipやinstall.packages()で正常にインストールできないことがある。 とりあえず、Rのパッケージは以下の通りに入力するとインストールされるみたいです。

$ R
> install.packages('任意のパッケージ', repos='http://cran.us.r-project.org')

参照