rna-seq入門_2023

差分

このページの2つのバージョン間の差分を表示します。


rna-seq入門_2023 [2023/11/24 18:17] (現在) – 作成 - 外部編集 127.0.0.1
行 1: 行 1:
 +# 環境構築
  
 +## Windowsの人
 +
 +1. ターミナルを開いて`wsl --install` (初回インストール時は再起動が必要)
 +
 +2.condaのインストール
 +
 +```
 +wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
 +bash Miniconda3-latest-Linux-x86_64.sh
 +#最後にPATHに追加するかと聞かれるのでyesにしておく
 +```
 +
 +3.Homebrew for Linuxのインストール
 +
 +```
 +/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
 +#PATHへbrewコマンドを追加 #環境によって変わるのでbrewをインストールしたときに最後に出てくるメッセージをちゃんと読んでおく
 +(echo; echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"') >> $HOME/.bashrc
 +eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
 +    
 +#brew用にツールをインストール(Ubuntuの場合)
 +sudo apt update
 +sudo apt install build-essential
 +brew install gcc
 +```
 +
 +condaよりもbrewを後でインストールすることで、brewでインストールしたPATHのほうを優先するように設定する。(```more $HOME/.bashrc```で開いたファイルに、condaよりも後に```eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"```が出てくれば大丈夫)
 +
 +4.Dockerの代わりにPodmanのインストール
 +
 +本の中でdockerと書かれている箇所は全てdocker->podmanと変更すればOK
 +
 +```
 +brew install podman
 +
 +brew services start podman
 +
 +#この状態でpodman pull alpineしてもError: command required for rootless mode with multiple IDs: exec: "newuidmap": executable file not found in $PATHと出るので、下記のツールをインストールしておく
 +sudo apt install uidmap
 +
 +#動作確認用コマンド
 +podman run -it --rm alpine uname -a
 +#Linux b9041c6983fd 5.15.90.1-microsoft-standard-WSL2 #1 SMP Fri Jan 27 02:56:13 UTC 2023 x86_64 Linux
 +```
 +
 +## Mac (intel)の人
 +
 +比較的新しいOSのバージョンまでアップデートしておかないと使えないツールが出てくる。Xcodeの最新版をインストール出来るかどうかが肝だと思われる。
 +
 +1.condaのインストール
 +
 +```
 +wget https://repo.anaconda.com/miniconda/Miniconda3-latest-MacOSX-x86_64.sh
 +bash Miniconda3-latest-MacOSX-x86_64.sh
 +```
 +
 +2.Homebrew for Macのインストール
 +
 +```
 +/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
 +#PATHへbrewコマンドを追加 #環境によって変わるのでbrewをインストールしたときに最後に出てくるメッセージをちゃんと読んでおく
 +(echo; echo 'eval "$(/opt/homebrew/bin/brew shellenv)"') >> $HOME/.zshrc
 +eval "$(/opt/homebrew/bin/brew shellenv)"
 +```
 +
 +condaよりもbrewを後でインストールすることで、brewでインストールしたPATHのほうを優先するように設定する。(```more $HOME/.zshrc```で開いたファイルに、condaよりも後に```eval "$(/opt/homebrew/bin/brew shellenv)"```が出てくれば大丈夫)
 +
 +3.Dockerの代わりにPodmanのインストール
 +
 +本の中でdockerと書かれている箇所は全てdocker->podmanと変更すればOK
 +
 +```
 +brew install podman
 +#podmanの仮想マシンをダウンロード。cpu数、メモリー量は各自のPCに合わせて。volumeは実際に解析するときに使用するフォルダーの絶対パスを指定しておく。(下記はCPU数4、メモリー4GBで、現在のフォルダで解析を行う場合の例)
 +podman machine init --cpus 4 --memory 4096 --volume "$PWD:$PWD"
 +#podmanの仮想マシンをスタート(OS再起動時は毎回行う)
 +podman machine start
 +
 +#もし後からCPUやメモリー量、podmanで使いたいフォルダーを変更・追加するときは、下記のCPUやメモリー、マウントボリュームのパラメータを変更する
 +podman machine stop
 +podman machine set --cpus 4 --memory 4096 --volume "$PWD:$PWD"
 +podman machine start
 +```
 +
 +## Mac (M1以降)の人 (2020年後半以降のMac)
 +
 +1.condaのインストール
 +
 +`x86_64でインストールするのが大事。armでインストールしてしまうと、condaにはほとんどパッケージがない`
 +
 +```
 +wget https://repo.anaconda.com/miniconda/Miniconda3-latest-MacOSX-x86_64.sh
 +arch -x86_64 /bin/bash Miniconda3-latest-MacOSX-x86_64.sh #arch -x86_64で実行するのを忘れずに!
 +```
 +
 +2.Homebrew for Macのインストール
 +
 +```
 +/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
 +#PATHへbrewコマンドを追加 #環境によって変わるのでbrewをインストールしたときに最後に出てくるメッセージをちゃんと読んでおく
 +#Homebrewはarm版も充実しているのでそのままインストールして問題なさそう
 +(echo; echo 'eval "$(/opt/homebrew/bin/brew shellenv)"') >> $HOME/.zshrc
 +eval "$(/opt/homebrew/bin/brew shellenv)"
 +```
 +
 +condaよりもbrewを後でインストールすることで、brewでインストールしたPATHのほうを優先するように設定する。(```more $HOME/.zshrc```で開いたファイルに、condaよりも後に```eval "$(/opt/homebrew/bin/brew shellenv)"```が出てくれば大丈夫)
 +
 +3.Dockerの代わりにPodmanのインストール
 +
 +本の中でdockerと書かれている箇所は全てdocker->podmanと変更すればOK
 +
 +```
 +brew install podman
 +#podmanの仮想マシンをダウンロード。cpu数、メモリー量は各自のPCに合わせて。volumeは実際に解析するときに使用するフォルダーの絶対パスを指定しておく。(下記はCPU数4、メモリー4GBで、現在のフォルダで解析を行う場合の例)
 +podman machine init --cpus 4 --memory 4096 --volume "$PWD:$PWD"
 +#podmanの仮想マシンをスタート(OS再起動時は毎回行う)
 +podman machine start
 +
 +#もし後からCPUやメモリー量、podmanで使いたいフォルダーを変更・追加するときは、下記のCPUやメモリー、マウントボリュームのパラメータを変更する
 +podman machine stop
 +podman machine set --cpus 4 --memory 4096 --volume "$PWD:$PWD"
 +podman machine start
 +
 +#動作確認用コマンド
 +podman run -it --rm alpine uname -a
 +#Linux 83d8b1007fde 6.5.6-200.fc38.aarch64 #1 SMP PREEMPT_DYNAMIC Fri Oct  6 19:34:05 UTC 2023 aarch64 Linux
 +#x86_64用のコンテナの場合は勝手にx86_64を使ってくれるみたい
 +podman run -it --rm c2997108/centos7:3-java uname -a
 +#Linux 66968c5f1f05 6.5.6-200.fc38.aarch64 #1 SMP PREEMPT_DYNAMIC Fri Oct  6 19:34:05 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
 +```
 +
 +# 研究室のサーバで実行する人向けの補足
 +
 +研究室のサーバには予めcondaとpodmanがインストールされています。brewは研究室のサーバでは使用することが出来ません。もしbrewでしかインストール出来ないツールをソースコードからインストールすることが出来ない場合は吉武まで連絡してください。
 +
 +研究室のサーバでは、condaコマンドよりも高速なmambaをインストールしているので、conda installが遅いと感じた場合は、mamba installを使ってください。(mambaはcreateとinstallは実行できますが、mamba activateはできないのでconda activateを使ってください。)
 +
 +# 各章の始めに
 +
 +各章の最初のconda installコマンドを下記のように変更しておくと競合が発生しづらい。
 +
 +例:Chapter3-1の```conda install -c bioconda fastp```の場合
 +
 +```
 +conda create -n chapt3-1 -c bioconda fastp
 +conda activate chapt3-1
 +```
 +
 +解析を途中で止めて再度ターミナルを開いたときは、`conda activate chapt3-1`として環境を呼び出す必要があるので注意。
 +
 +# ツールのインストール
 +
 +基本的には
 +
 +```
 +brew install sratoolkit
 +```
 +
 +
 +
 +```
 +conda install sra-tools
 +```
 +
 +で良いけど、condaでツールをインストールしすぎるとツールのバージョン制限を解消できない時があって、次のようなエラーが出たりする。
 +
 +```
 + % conda install -c bioconda trim-galore
 +Collecting package metadata (current_repodata.json): done
 +Solving environment: unsuccessful initial attempt using frozen solve. Retrying with flexible solve.
 +Solving environment: unsuccessful attempt using repodata from current_repodata.json, retrying with next repodata source.
 +Collecting package metadata (repodata.json): done
 +Solving environment: unsuccessful initial attempt using frozen solve. Retrying with flexible solve.
 +Solving environment: /
 +Found conflicts! Looking for incompatible packages.
 +This can take several minutes.  Press CTRL-C to abort.
 +failed
 +
 +UnsatisfiableError: The following specifications were found
 +to be incompatible with the existing python installation in your environment:
 +
 +Specifications:
 +
 +  - trim-galore -> python[version='2.7.*|3.5.*|3.6.*|>=2.7,<2.8.0a0|>=3.10,<3.11.0a0|>=3.9,<3.10.0a0|>=3.8,<3.9.0a0|>=3.7,<3.8.0a0|>=3.6,<3.7.0a0|>=3.5,<3.6.0a0|3.4.*']
 +
 +Your python: python=3.11
 +
 +If python is on the left-most side of the chain, that's the version you've asked for.
 +When python appears to the right, that indicates that the thing on the left is somehow
 +not available for the python version you are constrained to. Note that conda will not
 +change your python version to a different minor version unless you explicitly specify
 +that.
 +```
 +
 +その場合、新しい環境を作ってあげると良い。
 +
 +```
 +conda create -n trim-galore -c bioconda trim-galore
 +```
 +
 +新しくtrim-galore環境をインストールしてもそのままでは使えないので、下記のコマンドを実行して環境を切り替える
 +
 +```
 +conda activate trim-galore
 +```
 +
 +もとの環境に戻すなら
 +
 +```
 +conda deactivate
 +```
 +
 +# Dockerコマンドは
 +
 +全てpodmanに置換
 +
 +例:
 +
 +```docker run --rm -v `pwd`:`pwd` trinityrnaseq/trinityrnaseq Trinity```
 +
 +
 +
 +```podman run --rm -v `pwd`:`pwd` trinityrnaseq/trinityrnaseq Trinity```
 +# 本の内容修正項目
 +
 +## SRA tools (prefetch, fastq-dump)
 +
 +```
 +conda install -c bioconda sra-tools
 +```
 +
 +でインストールされるバージョンは古いので、
 +
 +```
 +brew install sratoolkit
 +```
 +
 +を使う。
 +## fastq_screen
 +
 +```
 +conda install -c bioconda fastq-screen
 +```
 +
 +ではデータベースなどがインストールされないので、別途インストールする必要がある。
 +
 +Bowtie2のインデックスが次のページにあるので、例えばその中から適当なものを拾ってくる
 +
 +https://benlangmead.github.io/aws-indexes/bowtie
 +
 +```
 +#ヒトやシロイヌナヅナ、ゼブラフィッシュなどを登録する場合の例
 +mkdir db
 +cd db
 +wget https://genome-idx.s3.amazonaws.com/bt/WBcel235.zip
 +wget https://genome-idx.s3.amazonaws.com/bt/BDGP6.zip
 +wget https://genome-idx.s3.amazonaws.com/bt/R64-1-1.zip
 +wget https://genome-idx.s3.amazonaws.com/bt/TAIR10.zip
 +wget https://genome-idx.s3.amazonaws.com/bt/GRCz11.zip
 +wget https://genome-idx.s3.amazonaws.com/bt/GRCh38_noalt_as.zip
 +for i in *.zip; do unzip $i; done
 +
 +(echo "BOWTIE2 `which bowtie2`
 +THREADS         8"
 +for i in $PWD/*/*.rev.1.bt2; do echo DATABASE `basename $i .rev.1.bt2` `echo $i|sed 's/.rev.1.bt2$//'`; done) > $(realpath `which fastq_screen`).conf
 +
 +cd ..
 +```
 +
 +## wasabi
 +
 +まずRをどうやってインストールするかについては、Ubuntuの場合はターミナルで下記を実行してシステムライブラリーをインストールします。
 +
 +```
 +sudo apt install r-base
 +sudo apt install libssl-dev libfontconfig1-dev libcurl4-openssl-dev libharfbuzz-dev libfribidi-dev libfreetype6-dev libpng-dev libtiff5-dev libjpeg-dev
 +```
 +
 +そして、Rを実行して、Rのライブラリーをインストールします。
 +
 +```
 +R
 +install.packages("devtools", repos="http://cran.r-project.org")
 +
 +install.packages("BiocManager")
 +BiocManager::install("rhdf5")
 +
 +devtools::install_github("COMBINE-lab/wasabi")
 +```
 +
 +## kallisto
 +
 +普通にconda installしていれば大丈夫なのだけど、
 +
 +```
 +conda create -c bioconda -c conda-forge -n kallisto-env kallisto
 +```
 +
 +とconda-forgeも使うようにしてしまっていると、古めのCPUだとコアダンプするバイナリがインストールされてしまうので注意。(-c conda-forgeをつけなければOK)