单细胞|M3-4. 细胞聚类与轨迹推断

R 复制代码
library(ggplot2)
library(RColorBrewer)
library(scales)
# 聚类细胞
cds <- cluster_cells(cds)

# 基于UMAP进行分区
cds@colData$part <- partitions(cds, reduction_method = "UMAP")

# 绘制分区图,展示不同的细胞群体
plot_cells(cds, color_cells_by = "partition", label_cell_groups = FALSE)

数据结构角度讲解

要解读这段代码的数据结构和内容,需要先明确每个数据对象和函数的功能。以下是各部分的数据结构解读:


1. cds 对象

cds 是一个 CellDataSet 对象,来自 Monocle3。它是单细胞分析的核心数据结构,包含以下主要内容:

  • 表达数据:

    • 存储在 cds@assays$data,通常为基因表达矩阵(如 counts 数据)。
  • 细胞元数据:

    • 存储在 cds@colData,是一个 DataFrame,包含每个细胞的相关信息,比如细胞类型、分区信息等。
  • 基因元数据:

    • 存储在 cds@rowData,是一个 DataFrame,包含基因的注释信息(如基因名、基因 ID)。
  • 降维结果:

    • 通常存储在 cds@reducedDims 中,包含 UMAP 或 PCA 的降维坐标。
  • 轨迹图数据:

    • 存储在 cds@principal_graph,包含轨迹推断生成的细胞间连接信息。

2. cluster_cells(cds)

这一步执行了 细胞聚类 ,结果被存储到 cds@colData 中的新列:

  • 新增列名为 cluster 或类似名称。
  • 每个细胞被分配到一个聚类标签(如 1, 2, 3 等整数)。

3. partitions(cds, reduction_method = "UMAP")

这一步执行了基于 UMAP 的 细胞分区

  • 输入:

    • cds: 包含细胞降维信息的 CellDataSet。
    • reduction_method = "UMAP": 指定基于哪种降维方法(通常为 UMAP)。
  • 输出:

    • 返回一个向量,包含每个细胞的分区标签(通常是整数,如 1, 2, 3)。
  • 存储:

    • 分区结果被存储到 cds@colData$part,每个细胞对应一个分区标签。

4. plot_cells 可视化

功能:

plot_cells 函数用于绘制细胞分布图,支持多种颜色映射方式,比如按分区、聚类或拟时序。

color_cells_by = "partition":
  • 输入 :
    • color_cells_by = "partition": 将细胞按分区标签着色。
  • 绘图内容 :
    • 细胞按降维(UMAP)坐标分布。
    • 不同分区用不同颜色表示。
label_cell_groups = FALSE:
  • 不为细胞群体标注标签,仅展示颜色分区。
数据结构:

绘图用到的数据来源于 cds 的以下部分:

  • 降维坐标 : 存储在 cds@reducedDims$UMAP
  • 分区标签 : 存储在 cds@colData$part

总结数据流

  1. 输入数据: 包括表达矩阵(counts)、细胞元数据和基因元数据。
  2. 中间过程 :
    • 聚类结果存储在 cds@colData$cluster
    • 分区结果存储在 cds@colData$part
  3. 可视化 :
    • UMAP 降维结果来自 cds@reducedDims$UMAP
    • 分区标签用于按颜色分组。

通过这些步骤,可以有效地展示不同细胞群体的分布及其分区关系。

相关推荐
方银的技术分享5 小时前
十五、AI训练师:机器学习-过拟合与欠拟合
人工智能·深度学习·机器学习
罗西的思考6 小时前
【OpenClaw具身硬件】ZeroClaw 源码阅读笔记(3)--- RAG
人工智能·算法·机器学习
工业HMI实战笔记6 小时前
数据可视化实战:趋势图、仪表盘、热力图的正确用法
信息可视化·数据挖掘·数据分析
戴西软件8 小时前
戴西iDWS.3DViz Suite数据轻量化可视化软件,从传统桌面软件向云端协同的重大突破
大数据·运维·网络·人工智能·机器学习·3d
今天AI了吗12 小时前
大模型技术全景(一):AI、机器学习、深度学习,三者的关系到底是什么?一文搞懂
数据库·人工智能·python·sql·深度学习·机器学习·rust
leoZ23112 小时前
AI+前端提效-09 AI赋能前端测试:单元测试、E2E测试自动生成,提升覆盖率
前端·人工智能·opencv·目标检测·数据挖掘·单元测试·语音识别
悟天特斯15 小时前
智慧楼宇AI节能系统:基于机器学习的建筑能耗优化实践
人工智能·物联网·机器学习
克里斯蒂亚诺更新15 小时前
从XGBoost角度理解为什么要使用机器学习
人工智能·机器学习
dfbz12345615 小时前
长沙中秋礼品市场数据分析:文创属性如何驱动复购率和口碑传播
大数据·经验分享·数据挖掘·数据分析
茉莉玫瑰花茶15 小时前
RAG 数据检索
人工智能·算法·机器学习