こんにちは、受託コンサルティングチームの hosor です。
先日、1 日に野良猫を 3 匹見ました。
お客様とお話していると「シングルセルの公開データを使って解析をしてみたいけれども、読み込み方法がよく分からない」というコメントをいただくことがあります。
そこで、今回はよく見られるデータ形式と Seurat での読み込み方法を 3 パターンご紹介していこうと思います。
作業環境
- Red Hat Enterprise Linux release 8.8 (Ootpa)
- R v4.3.2
- Seurat v5.0.3
- SeuratDisk v0.0.0.9021
hdf5 ファイル
発現マトリクスのデータを 1 つにまとめたようなデータ形式です*1。
○○.h5 というファイル名になります。
データの読み込みには、Read10X_h5 関数を使用します。
h5.data <- Read10X_h5("GSM8073459_PBS_LCMV.filtered_feature_bc_matrix.h5") seurat.obj <- CreateSeuratObject(counts = h5.data) seurat.obj An object of class Seurat 33991 features across 5243 samples within 1 assay Active assay: RNA (33991 features, 0 variable features) 1 layer present: counts
※ データは GSE255499 を使用しました。
txt, csv, tsv ファイル
以下のように、行名が遺伝子、列名が細胞の発現マトリクスがそのまま表現されたデータ形式です。
cell 1 | cell 2 | cell 3 | ... | |
---|---|---|---|---|
gene 1 | 1 | 2 | 14 | ... |
gene 2 | 4 | 27 | 8 | ... |
gene 3 | 0 | 0 | 1 | ... |
... | ... | ... | ... | ... |
発現マトリクスの中身を具体例に見ることができるという点が、hdf5 ファイルと異なる点になります。
○○.txt, ○○.csv, ○○.tsv いずれかのファイル名であることが多いです*2。
以下は一例として csv ファイルを扱います。
データの読み込みには、read.csv 関数を使用します。
csv.data <- read.csv("GSE210963_counts.csv", row.names = 1, header = TRUE) seurat.obj <- CreateSeuratObject(counts = csv.data) seurat.obj An object of class Seurat 17389 features across 22552 samples within 1 assay Active assay: RNA (17389 features, 0 variable features) 1 layer present: counts
※ データは GSE210963 を使用しました。
h5ad ファイル
Scanpy (Python のシングルセル解析ツール) で使用されるデータ形式です。
○○.h5ad というファイル名になります。
データの読み込みには、SeuratDisk の Convert 関数, LoadH5Seurat 関数を使用します*3。
SeuratDisk::Convert(source = "GSE155121_human_data_raw.h5ad", dest = "h5seurat", overwrite = TRUE) seurat.obj <- SeuratDisk::LoadH5Seurat(file = "GSE155121_human_data_raw.h5seurat") seurat.obj An object of class Seurat 32738 features across 463304 samples within 1 assay Active assay: RNA (32738 features, 0 variable features) 2 layers present: counts, data
※ データは GSE155121 を使用しました。
SeuratDisk は経験的にエラーが表示されることが多く、また h5ad ファイルが特に解析済みのデータの場合はデータを適切に移行できたか慎重に確認する必要があります。
そのため、心配な方は h5ad ファイルの使用を避けた方が無難です。
もし「使いたい公開データがあるが、どうしても読み込み方法が分からない」とお困りの場合は、アメリエフにお声がけください!
補足
こちらの記事が分かりやすかったです。