😸

2. データの読み込み

2024/05/01に公開

前回: 1. シングルセル解析(データの準備)

Seurat で、scRNA-seq のデータを読み込む方法です。
10x Genomics のデータの場合と、一般的なデータの場合の2種類の方法があります。

2.1 10x Genomics のデータの場合

10x Genomics のデータの場合、つまり、Cell Ranger でカウントした結果のデータの場合です。
読み込むには、Read10X() 関数を用います。その後、CreateSeuratObject で、 seurat オブジェクトに変換します。

Read10X() には、Cell Ranger でカウントした結果 (barcodes.tsv.gz, features.tsv.gz, matrix.mtx.gz) を格納したフォルダを指定します。

pbmc_data <- Read10X(data.dir = "./sample_filtered_gene_bc_matrices/")
pbmc_raw  <- CreateSeuratObject(counts = pbmc_data, project = "pbmc3k",
                                min.cells = 3, min.features = 200)

CreateSeuratObject で使用している引数は下記の通りです。

  • project は、任意のプロジェクト名です。
  • min.cells => 少なくとも3つの細胞で検出された遺伝子を採用。
  • min.features => 少なくとも200個の遺伝子が検出されている細胞を採用。

min.cellsmin.features は、状態の悪いデータを細胞として読み込まないための処置です。シングルセルのシーケンスでは、同じバーコードの付いたリードを1個の細胞由来とみなします。検出されている feature (=遺伝子) の数が極端に少ないバーコードは、正常な細胞由来でない可能性があるため、除外する方が無難です。

2.2 一般的なデータの場合

データが 10x Genomics の形式ではなく、一般的な csv や tsv 形式のデータの場合も、 Seurat で読み込むことができます。その場合は、まず、 read.csv() 関数を用いてデータフレーム形式で読み込みます。その後、10x Genomics のデータと同様に CreateSeuratObject() 関数で、 seurat オブジェクトに変換できます。

csv_data <- read.csv("sampleX.csv.gz", row.names = 1)
seurat_object <- CreateSeuratObject(counts = csv_data, project = "sampleX",
                                    min.cells = 3, min.features = 200)

2.3 その他(空間トランスクリプトームなど)のデータの場合

通常の遺伝子発現データだけではなく、Visium や Xenium などの空間トランスクリプトーム (spacial transcriptomics) のデータの読み込みにも Seurat は対応しています。Seurat のバージョン 5 には、下記のような読み込み関数が用意されています。nanoString 社など、10x Genomics 以外のプラットフォームにも対応しています。

  • Read10X_Image(): => Visium の画像読み込み。
  • ReadXenium(): => Xenium のデータ読み込み。
  • ReadNanostring(): => nanoString 社のデータに対応。
  • ReadAkoya()
  • ReadVitessce()
  • ReadVizgen()

データを読み込んだ後の解析については、Seurat のサイトの Vignettes が参考になります。まずは、チュートリアルに従って進めると良いでしょう。

Discussion