Scanpy 分析 3k PBMCs:降维与聚类

简介: Scanpy 分析 3k PBMCs:降维与聚类

引言

本系列讲解 使用Scanpy分析单细胞(scRNA-seq)数据教程,持续更新,欢迎关注,转发!

主成分分析

利用主成分分析(PCA)来降低数据维度,它能够揭示数据变化的主要方向,并且可以去除数据中的噪声。

sc.tl.pca(adata, svd_solver="arpack")

虽然我们可以在PCA坐标系中绘制散点图,但后续并不会用到这个图。

sc.pl.pca(adata, color="CST3")

我们来查看单个主成分对数据总方差的贡献程度。这有助于我们确定在计算细胞邻域关系时,应该考虑多少个主成分,比如在使用聚类函数sc.tl.louvain()tSNE sc.tl.tsne()时。在我们的经验中,对主成分数量进行一个大致的估计往往就足够了。

sc.pl.pca_variance_ratio(adata, log=True)

结果保存:

adata.write(results_file)

adata

计算邻域图

我们来根据数据矩阵的PCA表示来计算细胞的邻域图。你可以直接使用默认值。不过,为了能够复现Seurat的实验结果,我们还是采用以下这些特定的数值。

sc.pp.neighbors(adata, n_neighbors=10, n_pcs=40)

嵌入邻域图

我们建议采用UMAP将图嵌入到二维空间,具体内容见下文。相比tSNEUMAP在呈现流形的全局连通性方面表现得更为出色,也就是说,它能更好地保留数据的轨迹信息。不过,在某些情况下,你可能会发现存在不相连的聚类或其他连通性问题。这些问题通常可以通过运行特定的命令来解决。

sc.tl.paga(adata)
sc.pl.paga(adata, plot=False)  # remove `plot=False` if you want to see the coarse-grained graph
sc.tl.umap(adata, init_pos='paga')

sc.tl.umap(adata)

sc.pl.umap(adata, color=["CST3", "NKG7", "PPBP"])

由于我们对adata设置了.raw属性,之前的图展示的是“原始”(已经过标准化、对数化处理,但未经校正)的基因表达情况。你也可以通过明确指出不使用.raw属性,来绘制经过缩放和校正后的基因表达情况。

sc.pl.umap(adata, color=["CST3", "NKG7", "PPBP"], use_raw=False)

聚类邻域图

Seurat以及许多其他框架一样,我们推荐使用Leiden图聚类方法(基于优化模块性的社区检测)。需要注意的是,Leiden聚类是直接对细胞的邻域图进行聚类的,而我们在前面的部分已经计算出了这个邻域图。

sc.tl.leiden(
    adata,
    resolution=0.9,
    random_state=0,
    flavor="igraph",
    n_iterations=2,
    directed=False,
)

绘制聚类结果,这些结果与Seurat的结果非常契合。

sc.pl.umap(adata, color=["leiden", "CST3", "NKG7"])

结果保存:

adata.write(results_file)
相关文章
|
6月前
|
编解码 算法 数据可视化
Scanpy 分析 scRNA-seq:细胞类型注释
Scanpy 分析 scRNA-seq:细胞类型注释
Scanpy 分析 scRNA-seq:细胞类型注释
|
IDE Linux 开发工具
Linux系统、版本、CPU、内存查看、硬盘空间
*查看系统版本:lsb_release -a [root@localhost /]# lsb_release -a *查看内核版本:uname -a *查看cpu型号:cat /proc/cpuinfo [root@localhost /]# cat ...
5354 0
|
6月前
|
数据采集 存储 数据可视化
Scanpy 分析 3k PBMCs:数据预处理
Scanpy 分析 3k PBMCs:数据预处理
222 12
Scanpy 分析 3k PBMCs:数据预处理
|
3月前
|
自然语言处理 监控 安全
从原型到生产:LLM评估框架选型的黄金法则
本文系统解析企业级LLM应用评估体系,涵盖多轮对话、RAG、智能体三大场景,对比主流框架适配性,助力构建科学评估流程。建议点赞收藏。
386 1
|
6月前
|
机器学习/深度学习 人工智能 自然语言处理
TsingtaoAI具身智能机器人开发套件及实训方案
该产品套件创新性地融合了先进大模型技术、深度相机与多轴协作机械臂技术,构建了一个功能强大、灵活易用的人机协作解决方案。其核心在于将智能决策、精准感知与高效执行完美结合,为高校实训领域的发展注入新动力。
675 10
|
9月前
|
数据采集 数据挖掘
RNA-seq 差异分析的细节详解 (7)
RNA-seq 差异分析的细节详解 (7)
RNA-seq 差异分析的细节详解 (7)
|
9月前
|
数据挖掘 测试技术
R中单细胞RNA-seq分析教程 (8)
R中单细胞RNA-seq分析教程 (8)
173 18
|
11月前
|
数据挖掘
R中单细胞RNA-seq分析教程 (5)
R中单细胞RNA-seq分析教程 (5)
202 13
R中单细胞RNA-seq分析教程 (5)
|
11月前
|
搜索推荐
非编码RNA并非 “垃圾”
非编码RNA并非 “垃圾”
非编码RNA并非 “垃圾”
|
10月前
|
机器学习/深度学习 算法 PyTorch
昇腾910-PyTorch 实现 Alexnet图像分类
本文介绍了在昇腾平台上使用PyTorch实现AlexNet对CIFAR-10数据集进行图像分类的实战。内容涵盖AlexNet的创新点、网络架构解析及代码实现,包括ReLU激活函数、Dropout、重叠最大池化等技术的应用。实验中详细展示了如何构建模型、加载数据集、定义训练和测试模块,并通过60个epoch的训练验证模型性能。