单细胞数据分析
单细胞数据分析
自2013年被选为年度方法以来,单细胞技术已经足够成熟,可以为复杂的研究问题提供答案。随着单细胞分析技术的发展,从单细胞分析中收集的数据也显著增加,导致处理这些庞大而复杂的数据集的计算挑战。
单细胞RNA测序-数据分析
scanpy 是一个用于分析单细胞转录组(single cell rna sequencing) 数据的python库,文章2018发表在Genome Biology。它和seurat几乎大差不差,但是以Python的生态,完全可以认为其具有更大的扩展潜力。
安装环境(Scanpy单细胞测序学习-环境配置)
公共单细胞数据集
10X Genomics免费提供的外周血单核细胞(PBMC)数据集
scanpy提供的公开数据集
开始
1. 载入包
# 载入包 |
scanpy==1.10.1 anndata==0.10.7 umap==0.5.5 numpy==1.23.1 scipy==1.13.0 pandas==2.2.2 scikit-learn==1.4.2 statsmodels==0.14.1 igraph==0.11.4 pynndescent==0.5.12
2. 载入数据集
# sc载入数据集 |
3. 查看数据
adata |

AnnData object with n_obs × n_vars = 2700 × 32738 意思是这是一个AnnData对象,n_obs 即有2700个细胞样本,n_vars 即有32738个基因序列。
数据对象 (anndata - Annotated data)
Scanpy 构建的对象叫做 AnnData 对象:
标准的AnnData对象主要包括以下几个部分(如果你要调用这些属性,只需要直接添加到后面即可,比如adata.obs、adata.X等):
- .X: 存储基因表达矩阵,行代表基因,列代表细胞,也就是显示的 n_obs x n_vars。
- .obs: 观测值数据,存储细胞相关的注释信息,例如细胞类型、样本信息等。
- .var: 特征和高可变数据,存储基因相关的注释信息,例如基因名称、基因类型等。
- .uns: 非结构化数据,存储与数据分析相关的信息,例如数据预处理参数、可视化参数等;可以包含一些在分析数据时我们得到的一些有价值的信息。
- .obsm: 细胞的附加数据,例如细胞的空间位置、转录组拆分信息等;也就是我们进行进一步处理后得到的细胞数据。
- .varm: 基因的附加数据,例如基因的表达模式、变异信息等;也就是我们处理得到的基因级别的元数据。
- .layers: 各种类型的基因表达矩阵,例如原始表达矩阵、归一化表达矩阵等;我们可能拥有不同形式的原始核心数据,也许一种是规范化的,或者不是。这些可以存储在 AnnData 的不同layer中。
- varp、obsp: 基因、细胞映射关系的附加数据,我没有在相关文档找到varp的详细说明,但应该类似于varm、obsm,拥有 n_obs x n_obs 和 n_var x n_var 大小的矩阵,用于数据分析国产中得到的一些映射关系的信息,比如A基因与B基因之间的关系,A细胞与B细胞之间的关系。
p即Pairwise annotation,m即Multi-dimensional annotation,obs即observations,var即variables/ features,uns即Unstructured annotation,具体的数据解释可参考:anndata.AnnData — anndata 0.1.dev50+g0a768fc documentation
整个AnnData对象如下所示结构,具体意思就是,根据var即基因信息作为属性列包含了 var 表、X表、varm表、varp表,同样的obs作为属性列包含了obs表、X表、obsm表、obsp表
数据核心
单细胞转录组的核心就是一个cell X gene的二维表,
4. 查看数据
参考资料
推荐一本书:
《利用 Python 进行数据分析 · 第 2 版》 · BookStack
参考资料:
Single Cell data analysis tutorial on PBMC dataset using scanpy - Part1
Youtube/scanpy/PBMC_data at main · ramadatta/Youtube (github.com)
【基于python的单细胞分析】使用scVI实现批次效应校正
scanpy 单细胞分析包图文详解 01 | 深入理解 AnnData 数据结构
scanpy教程:预处理与聚类-腾讯云开发者社区-腾讯云 (tencent.com)
预处理和聚类 3k PBMC(旧工作流) — scanpy-tutorials 0.1.dev50+g06018e6 文档