monocle3のインストール

日付;2022/10/30(日)

Single cell RNA sequence(scRNA-seq)の解析を行うための代表的なソフトの一つにmonocle3がある。最も王道のツールとしてSeurat、その次にこのmonocle3が挙げられるような感じがする。実は、Seuratもmonocle3も、マニュアルに目を通した程度しか知らないのだが、印象としてはこのmonocle3のほうが扱い易いのではないかと思っている。これら2つとscanpyなんかも試す必要があるように思っている。

そこで、monocle3をUbuntu20.04にインストールしようと思うが、Seuratと同様、というかそれ以上に煩雑だったので記録をしてく。

インストールの手順は、monocle3に従う。Bioconductorからいくつかのライブラリーをインストールし、次にGithubからmonocle3をインストールすれば良い。インストール方法は、Seuratをインストールしたときと同じである。必要ならばここを参照にすると良い。簡単に述べると、基本Rstudioを使わず、ターミナルでsudo apt searchとsudo apt installを使ってインストールしていく。そしてRが必要ならがターミナルでsudo Rを使い、それでも、例えば、必要なライブラリやパッケージが揃っているにも関わらず依存関係のエラーが出る場合はRstudioでインストールする。この方法でインストールされたRのパッケージは少し古いものになるが、このような複雑かつ面倒なパッケージをUbuntuに入れるときにはこれで良い。

monolce3のインストール手順

まずはsudo apt update

これを忘れないように。

BiocManager

インストール手順によれば、まずはバージョン3.14のBiocManagerをインストールする必要があるらしい。そこで手順(To install Bioconductor, open R and run:のところ)に従ってそのインストールを試みる。しかし、いきなりエラーがでる。どうやら、R4.2.1にはバージョン3.14のBiocMangerはインストールできないらしい。そうではなくバージョン3.15の必要があるらしい。ということで、素直に従ってバージョン3.15をインストールすることにする。

R4.2にはv.3.15のBiocManagerが必要らしい。

その結果、以下のパッケージが必要だっつって、インストールを断られる。マジか。

openssl
textshaping
ragg
pkgdown

openssl

いきなり、いまいちわからないことが起こる。monocle3はRのパッケージなのに、sudo install r-cran-opensslだけでなく、sudo apt install openssl(Linuxのパッケージ)も必要らしい。そして、これらをインストールをしても結局Rのopensslのインストールがうまく行かず、Linuxのパッケージとしてlibssl-devをインストールし、Rに移動してinstall.pakages(“openssl”)を走らせたら上手く行った。もうこの時点で嫌になってくる。

textshaping

一つのパッケージをインストールするのにこんなに時間がかかるのだろうか。Try and errorが多すぎて、作業のログを全然残せていない。なので、インストールしたパッケージを以下に記す。まず、これらをsudo apt searchで探して、それっぽいものをインストールしても良いと思う。gccとg++については、Seuratのときにgfotranが未インストールだった経験もあったので、一応流しておいた。

libharfbuzz-dev
libfribidi-dev
libharfbuzz-dev
gcc
g++
libfreetype6-dev
libglib2.0-dev
libcairo2-dev

最後にRのでinstall.packages(“textshaping”)を流して無事にインストールできた。

ragg

自分のコンピューターではこのraggというRのパッケージをインストールするためにはlibtiff-4というLinuxのライブラリが必要らしい。しかし、これはリポジトリに無いらしい。なので、似たようなライブラリをひとしきりインストールした。実際にどれが必要だったか、良く理解していない。この時点でもう考えるのを止めており、指が自動で動いている状態だった。以下が sudo apt installでインストールしたパッケージである。

libtiff-dev
libtiff-tools
libtiff5-dev
r-cran-rtiff

最後にRでinstall.packages(“ragg”)でOKだった。

pkgdown

これはとても依存の少ない優秀なライブラリで、install.packages(“pkgdown”)でOKだった。これが終わったら、To install Bioconductor, open R and run:のところにあるBiocManagerを、 version = 3.15にしてインストールする。

monocle3のために必要なパッケージのインストール

BiocManagerのインストールが無事に出来れば、次は手順の2つ目。で以下でエラーが出た。

nloptr
Cairo
terra
lme4
ggrastr

nloptr

これは簡単。sudo apt install r-cran-nloptr

Cairo

これも簡単。sudo apt install r-cran-cairo

lme4

これも簡単。sudo apt install r-cran-lme4

ggrastr

これも簡単。でもこのパッケージって、名前からしてggplot2とかのあれである。なので、ここはRでinstall.packages(“ggrastr”)でインストールした。

terra

どうやらこのライブラリにはlibgdal29とlibproj19というパッケージが必要らしい。しかし、そんなものはレポジトリには登録されていない。ということでGoogleで検索すると、どうやらlibgdal-devというパッケージに入っているらしい。なので、これをsudo apt install libgdal-devでインストールした。その次に、sudo apt install r-cran-terraを流してみても、どうしてもインストールできなかった。理由はわからん。なので仕方なくRstudioでinstall.packages(“terra”)でインストールした。

改めてmonocle3のために必要なパッケージのインストール

改めて手順2つ目を流してみる。しかし、次は以下のようなエラーがでた。

必要だって言うからインストールしてやったのに、出来ないとはどういうことだ。

Warning messages 1:

もう既に考えるのを止めている。なので、何も考えずにforce = TRUEを流して1:にリストアップされているパッケージを以下のように流してみる。

BiocManager::install(c('BiocGenerics', 'DelayedArray', 'DelayedMatrixStats',
                       'limma', 'lme4', 'S4Vectors', 'SingleCellExperiment',
                       'SummarizedExperiment', 'batchelor', 'Matrix.utils',
                       'HDF5Array', 'terra', 'ggrastr'), force = TRUE)

これで無事、かどうかわからんが、とりあえずインストールできたようだ。

Warning messages 2:

このMatrix.utilsは、随分と前に開発が止まってそうだった。言うても仕方がないとはいえ、ユーザー側にとってみれば面倒な問題である。これが使えるヤツだけついて来いってことなんだろうか。

無理っぽい。

なので、しょうがなくソースコードをダウンロードして、install.packages(“~/Downloads/Matrix.utils_0.9.8.tar.gz”, repos = NULL, type = “source”)でインストールする。

monocle3

ようやくmonocle3自体のインストールに着いた。devtoolsは既に入っている。なので、devtools::install_github(‘cole-trapnell-lab/monocle3’)を流す。そしてようやくインストールできた。

本当に、大変なソフトである。ちなみに、Windows 11では、イレギュラーな部分は最後のMatrix.utilsのインストールだけであった。方法は、Warning messages 2のところ書いた通り、ソースからインストールすれば良い。その後、Rstudioでマニュアルに従ってコードを実行すれば良かった。おそらく、MacOSとかでもかなりギークなことをやらなくてはならないのだろうと思う。