日付;2023/02/24(金)
シングルセルRNAシークエンスでは、一般的にはシークエンスの結果は使用したライブラリ調整キットに応じたインデックスファイル(I1、I2.fastq)とcDNAのリード(R1.fastq、R2.fastq)の4つ(実際はこれらのファイル名にレーンやサンプルの情報が入っているはず。)が、サンプルあたり返ってくる。それらをリファレンスシークエンスにマッピングし、遺伝子にマップされたリードをカウントし、カウントマトリックス(count matrix)を作成するのがシングルセルRNAシークエンスのデータ解析の第一歩である。もしライブラリ調整キットに10xGenomicsの3′ GEX kitを使っている場合は、このCell Rangerというソフトが明らかに最も有用である。ここでは、そのCell rangerのインストール方法を述べる。尚、ここに書かれていることは、すべて10xGenomcsのインストラクション通りなので、詳しく知りたい場合はそれを参考にしたほうが賢明である。ここでは、cellrangerと書く。
まず、ここにインストラクションが乗っている(https://support.10xgenomics.com/single-cell-gene-expression/software/pipelines/latest/using/tutorial_in)。
Cell Ranger
インストールのための事前準備
最初に以下のコマンドを流す。やっていることは、まずホームディレクトリに移動し、その中にcellrangerというディレクトリを作り、さらにその中にyardというディレクトリを作成する。なぜyardという名前になったのか、よくは知らん。次にappsというディレクトリを作成し、そこに移動する。
cellrangerのダウロードと展開
```sh
cd
mkdir /cellranger/yard
cd /home/XXXXX/cellranger/yard
mkdir apps
cd apps
```
次にcellrangerをここからダウンロードする(https://support.10xgenomics.com/single-cell-gene-expression/software/downloads/latest)。ソフトはフリーであるが、ダウンロードのためには10xGenomicsに登録する必要がある。正直に自分の所属と連絡先を入力し、登録すればよい。別に金は取られないので。自分はwgetに慣れているので、そちらを使用する。ここでは、ダウンロード元の詳しい記述は述べないので、必要に応じてサイトに行って確認したら良いと思う。
```sh
sudo wget -O cellranger-7.1.0.tar.gz "https://cf.10xgenomics.com/releases/cell-exp/cellranger-7.1.0.tar.gz?Expires=....."
```
ダウンロードが終わったら展開する。
```sh
tar -zxvf cellranger-7.1.0.tar.gz
```
これはバイナリーなので、展開した後、cellrangerが置いてあるディレクトリへのパスを通したら、使用できるようになる。以下の記述を.bashrcもしくは.bash_profileに追加する。
```sh
PATH=$PATH:/home/XXXXX/cellranger/yard/apps/cellranger-7.1.0/bin
```
念の為にインストールできているか以下で確認する。ヘルプ画面が見れるはず。ただし、これはソフトがインストールされたかどうか確認するだけで、動くかどうかの確認ではない。動くかどうか確認するためには、次のステップを経る必要がある。
```sh
cellranger --help
```
cellrangerによるシステムのチェックとインストールのチェック
次に、cellrangerがインストールされたコンピューターのチェックや、実際に動くかどうかを確認する。そのためには、以下を流す。
```sh
cellranger sitecheck > sitecheck.txt
cellranger testrun --id=check_install
```
sitecheck.txtには、OS、メモリ、CPUの情報なんかが沢山書かれているので、一度見ておくと良いかもしれない。個人的にはtestrunのほうが重要と思う。終われば以下のような出力が得られる。とりあえず、これでインストラクションに書かれた手順は終わり。cellranger mkfastq以外のコマンドはこれで無事に動くと思われる。

bcl2fastq2のインストール
bcl2fastq2インストールのための事前準備
次にcellranger mkfastqを使えるようにする。これはちょっと面倒なステップがある。mkfastqはイルミナのbcl2fastq2のラッパーであることが10xGenomicsのインストラクションに書かれている。実際、cellranger mkfastqではなくbcl2fastq2でも同じことができるようだ。でも、正直なところ、10xGemomicsのライブラリ調整キットを使っているのならば、10xGenomicsで作成されたソフトを使いたいものだ。なので、それをイルミナのウェブページにいってbcl2fastq2をダウンロードし、インストールする。その前に、いくつかライブラリをインストールしなくてはならない。その理由はなんとこのbcl2fastq2はrpmであるためだ。正直言って、こういった解析を目的に今時誰がrpmのシステムなんか使っているのだろうか。もうほとんどがubuntuではないのだろうか。なんとかしてほしい。
いろいろ言ってても始まらないので、rpmからdebianやubuntuで動かくフォーマットのバイナリに変換する必要がある。そのためには以下をインストールする。
```sh
sudo apt update
sudo apt search rpm2cpio
sudo apt install rpm2cpio
```
bcl2fastq2のダウンロード
次に、イルミナからbcl2fastq2をダウンロードする(https://support.illumina.com/sequencing/sequencing_software/bcl2fastq-conversion-software/downloads.html)。ここでも、自分の名前、所属、メールを登録する必要がある。注意点としては、bcl2fastqはダウンロードできてもcellrangerで動かすことができなかったと思う。確か。なので、bcl2fastqが必要である。ダウンロードしたら、それを任意の場所に移動させ、自分でもそこに行く。
```sh
mv /home/XXXXX/Downloads/bcl2fastq2-v2.20.0.422-Linux-x86_64.rpm /home/katsu/bcl2fastq2/
cd /home/XXXXX/bcl2fastq2/
```
rpmからbcl2fastq2を抽出する
次に、10xGenomicsのインストラクションに従ってイルミナからダウンロードしたbcl2fastq2をcellrangerでも使えるように変換する。方法はここに乗っている(https://kb.10xgenomics.com/hc/en-us/articles/360001618231-How-to-troubleshoot-installing-bcl2fastq-)
```sh
sudo rpm2cpio /home/XXXXX/bcl2fastq2/bcl2fastq2-v2.20.0.422-Linux-x86_64.rpm | cpio -idmv
```
これが終わったら、パスを通す。
```sh
PATH=$PATH:/home/XXXXX/bcl2fastq2/usr/local/bin
```
これで、bcl2fastq2が使えるようになっているはず。
cellranger mkfastqのテスト
次に、cellranger mkfastqがちゃんと動くかどうか確かめる。そのためにはテストデータを使用する。テストデータは10xGenomicsからダウンロードする。ダウンロードできたら展開しておく。インストラクションはここ(https://support.10xgenomics.com/single-cell-gene-expression/software/pipelines/latest/using/tutorial_fq)にある。以下の例では、cellranger_mkfastq_testrunというディレクトリでテストすることにした。なので、必要なデータセット等はそこに移動させておく。
```sh
wget https://cf.10xgenomics.com/supp/cell-exp/cellranger-tiny-bcl-1.2.0.tar.gz
wget https://cf.10xgenomics.com/supp/cell-exp/cellranger-tiny-bcl-simple-1.2.0.csv
tar -zxvf cellranger-tiny-bcl-1.2.0.tar.gz
mv cellranger-tiny-bcl-1.2.0 cellranger-tiny-bcl-simple-1.2.0.csv /home/katsu/cellranger_mkfastq_testrun/
```
次にテストデータを使ってbclファイルからfastqファイルを作成してみる。インストラクションをみると、テストデータはシングルインデックスのライブラリらしい。なので、以下のようなコマンドを走らせる。 これで、I1、R1、R2.fastqが出来上がってくるはず。
```sh
cd /home/XXXXX/cellranger_mkfastq_testrun/
cellranger mkfastq \
--id=tiny-bcl \
--run=cellranger-tiny-bcl-1.2.0 \
--csv=cellranger-tiny-bcl-simple-1.2.0.csv \
--output-dir=/home/XXXXX/cellranger_mkfastq_testrun/output \
--use-bases-mask=Y26,I8n*,Y98
```

cellranger mkfastqが必要な場合
もしシークエンスをいわゆる”相乗りプラン”で注文して「いない」場合、業者からbclファイルをもらえると思う。この場合は、自分でcellranger mkfastqを適用できる。昨年(2022年)、筑波大学発のiLacという会社に3′ GEXライブラリのシングルセルRNAシークエンスを依頼したが、この業者のシークエンスが結構ひどかった。知りたければここを読んでくれれば良いが、勝手にXPモードで読むは、挙げ句にバルクRNAシークエンスと同じ出力で結果を返してきやがった。これは事前のミーティングで、「こちらはシングルセルRNAシークエンスを依頼する。Dual Indexでライブラリ作っているから、自分らのサンプルを2つずつマルチプレックスで目的のリード数まで読んでくれ!」という話をし、同意したはずである。また「どうやら出力がバルクRNAシークエンスの形式になっているから、直してくれ。」という再三の要求にも答えてくれなかった。不幸中の幸いとしては、上述のように他のラボとの”相乗りプラン”にしていなかったことで、それによりシークエンスから吐き出されるbclファイルを手に入れることが出来て、無事にDual Index付きのペアエンドリード.fastqに変換でき、その後の解析もできた。ただし、XPモードでリードが分割されてしまったことはどうしようもないが。一つのサンプルを分割して読まれると、cellranger count後にcellranger aggrを使用しなくてはならず、その場合はDoubletFinderが使えなくなってしまう。
ちなみに、相乗りプランを使った場合、bclファイルは入手できない。それは他のラボの結果も送付してしまいことになり、情報保護の観点から会社にとって非常にまずいためだ。その場合はインデックスとcDNAのリードのfastqファイルを入手することになる。
もしこの記事を読んでいる人がいれば、国立大学発のベンチャーは本当に要注意であることを肝に命じるようにアドバイスしたいと思う。これは会社が悪いというより、というか、最終的に会社が悪い(学習していない、教育していない、コミュニケーションとれていない、間違いに気づくことができない、ダブルチェックの体制が皆無もしくは機能不全、等々。)ということに結びつくが、むしろ、発注を受けて仕様書を作成する担当者の能力がシングルセルRNAシークエンスを行うまでに足りていないことが原因である。もし少しでも、どこの会社でも自分の担当している者の知識が怪しいと思ったら、以前のポストで書いた内容で質問してみて、それでもダメそうだったらその会社は避けたほうが賢明である。現時点でシングルセルRNAシークエンスの実験は150から200万はかかる、非常に高価な実験だからだ。こんな間抜けな失敗は許してはならない。
完全に余談だが、自分は今後利用しない会社はiLacとノボジーンである。事前ミーティング、その後の見積もり書作成、そしてサンプルシート作成を通して、どちらも担当者(役員@iLacやシニアアカウントマネージャー@ノボジーン)とテクニシャンの知識差が大きすぎて、シングルセルRNAシークエンスを安心して依頼することは出来ないと判断した次第である。ノボジーンはメールの返信が遅すぎでこちらを舐めているとしか思えず、従って失敗未遂であるが、iLacはすでにお世辞にも成功とは言えない仕事だった。日本で会社を選ぶなら、10xGenomicsの認定を得ているKOTAIバイオ、かずさゲノムテクノロジーズ、アゼンタの三択である。どの会社も非常に優秀であるが、マシン(リード数に影響)と価格の面でアゼンタが一番良く見える。もちろん、他の小さな会社でも細かく対応してくれるようだ。スムーズに事が進むかどうかは担当者に依ると思うので、優秀な者が担当してくれればきっとうまく行くだろう。その場合はラッキーである。