单细胞测序10X表达矩阵整理为三文件
时间: 2025-07-13 22:48:34 浏览: 6
整理10X单细胞测序的表达矩阵为三个标准文件(`barcodes.tsv`, `features.tsv`, 和 `matrix.mtx`)通常涉及从10X Genomics提供的输出格式中提取数据。以下是一个通用流程,适用于从10X的数据目录中提取和处理这些文件:
### 1. 获取原始数据
10X 单细胞 RNA 测序数据通常以 **HDF5** 文件(例如 `filtered_feature_bc_matrix.h5`)或 **MTX 格式** 提供。如果是 HDF5 文件,可以使用 `cellranger` 或 `Scanpy` 等工具将其转换为所需的三文件格式。
#### 使用 `cellranger` 提取
`cellranger` 是 10X 官方提供的工具,可以用于解压、转换和分析数据。
```bash
# 解压数据并生成标准文件
cellranger mat2csv --matrix=filtered_feature_bc_matrix.h5 --output=expression_data.csv
```
此命令将生成一个 CSV 文件,但为了获得稀疏矩阵格式的标准文件,建议使用 `cellranger` 的内置功能来提取:
```bash
cellranger count --id=sample_name \
--fastqs=path_to_fastq \
--transcriptome=path_to_reference_genome \
--localcores=8 \
--localmem=64
```
最终,在输出目录中的 `outs/filtered_feature_bc_matrix` 中会包含以下文件:
- `barcodes.tsv.gz` —— 细胞条形码信息
- `features.tsv.gz` —— 基因特征文件
- `matrix.mtx.gz` —— 表达矩阵,存储了细胞与基因之间的表达量数据 [^1]
### 2. 手动提取数据(适用于已解压的 MTX 数据)
如果数据已经是 MTX 格式,则可以直接解压 `.gz` 文件并进行处理:
```bash
gunzip barcodes.tsv.gz
gunzip features.tsv.gz
gunzip matrix.mtx.gz
```
解压后,将得到以下三个文件:
- `barcodes.tsv`:每一行代表一个单细胞的唯一标识符(Barcode)
- `features.tsv`:列出所有被检测到的基因名称,包括其 ID 和类型
- `matrix.mtx`:稀疏矩阵格式,表示每个细胞与基因的表达量 [^1]
### 3. 使用 Python (Scanpy) 进行转换
如果希望使用 Python 脚本操作,可以使用 `Scanpy` 库加载 HDF5 文件并保存为标准格式:
```python
import scanpy as sc
# 加载 10X 的 H5 文件
adata = sc.read_10x_h5("filtered_feature_bc_matrix.h5")
# 保存为标准的三文件格式
adata.write("expression_data.h5ad") # 保存为 AnnData 格式
sc.write("barcodes.tsv", adata.obs)
sc.write("features.tsv", adata.var)
sc.write("matrix.mtx", adata.X)
```
### 4. 验证文件内容
确保生成的文件符合标准格式:
- `barcodes.tsv` 包含一列 Barcode 名称
- `features.tsv` 包含基因 ID、名称及类型
- `matrix.mtx` 符合稀疏矩阵格式,每行对应一个非零值的 (cell, gene, value)
---
###
阅读全文
相关推荐


















