空间单细胞|10x Visium数据分析、可视化与整合(2)

简介: 空间单细胞|10x Visium数据分析、可视化与整合(2)

引言

本文介绍了使用Seurat分析具有空间分辨率的RNA测序数据的方法,重点在于将空间信息与分子数据相结合。将包括以下常见于空间数据分析的任务:

  • 数据标准化
  • 降维和数据聚类
  • 发现空间变异性特征
  • 与单细胞RNA测序数据的整合
  • 处理多个样本切片

降维;聚类;可视化

然后,可以使用与 scRNA-seq 分析相同的工作流程,对 RNA 表达数据进行降维和聚类。

brain <- RunPCA(brain, assay = "SCT", verbose = FALSE)
brain <- FindNeighbors(brain, reduction = "pca", dims = 1:30)
brain <- FindClusters(brain, verbose = FALSE)
brain <- RunUMAP(brain, reduction = "pca", dims = 1:30)

然后,可以在 UMAP 空间(使用 DimPlot())中可视化聚类结果,或者使用 SpatialDimPlot() 将聚类结果叠加在图像上。

p1 <- DimPlot(brain, reduction = "umap", label = TRUE)
p2 <- SpatialDimPlot(brain, label = TRUE, label.size = 3)
p1 + p2

面对众多颜色,要弄清楚每个体素属于哪个簇可能会有些困难。提供了几种方法来应对这一挑战。通过设置标签参数,可以在每个簇的中心位置放置一个彩色框以示区分(参见上方的图表)。

此外,您还可以利用cells.highlight参数在SpatialDimPlot()图中突出显示某些特别关注的细胞。这在识别不同簇的空间分布时非常有用,正如在下面的示例中展示的那样。

SpatialDimPlot(brain, cells.highlight = CellsByIdentities(object = brain, idents = c(2, 1, 4, 3,
    5, 8)), facet.highlight = TRUE, ncol = 3)

img

空间变化特征的识别

Seurat 提供了两种方法来识别与组织内部空间位置相联系的分子特征。第一种方法是根据组织内预先定义的解剖区域进行差异表达分析,这些区域的确定可以基于无监督聚类的结果或者已有的知识。在当前情况下,这种方法是可行的,因为所讨论的簇具有清晰可见的空间分布特征。

de_markers <- FindMarkers(brain, ident.1 = 5, ident.2 = 6)
SpatialFeaturePlot(object = brain, features = rownames(de_markers)[1:3], alpha = c(0.1, 1), ncol = 3)

除了基于预标注区域的差异表达分析,Seurat还提供了另一种方法FindSpatiallyVariables(),用于在没有预先标注的情况下寻找具有空间分布模式的分子特征。这种方法的默认实现(method = 'markvariogram'),借鉴了Trendsceek算法的思想,它将空间转录组数据视作标记点过程,并通过计算“变差图”来识别那些其表达水平与空间位置相关的基因。具体来说,这一过程会计算gamma(r)值,用以衡量在特定距离“r”处两个点之间的相关性。默认情况下,在分析中使用距离“r”值为5,并仅针对变量基因(其变异性是独立于空间位置来计算的)进行计算,以提高效率。

brain <- FindSpatiallyVariableFeatures(brain, assay = "SCT", features = VariableFeatures(brain)[1:1000],
    selection.method = "moransi")

现在可视化通过该度量识别的前 6 个特征的表达。

top.features <- head(SpatiallyVariableFeatures(brain, selection.method = "moransi"), 6)
SpatialFeaturePlot(brain, features = top.features, ncol = 3, alpha = c(0.1, 1))

提取特定解剖区域

与处理单细胞数据对象相似,您可以选择性地关注数据的特定部分。例如,可以大致选取前额皮层区域进行分析。这种做法也为之后将这些数据与皮层单细胞RNA测序数据集进行整合提供了便利。首先选择一部分细胞簇,然后根据它们确切的空间位置进行细分。完成这一子集操作后,可以选择在完整的图像上或者图像的裁剪部分上展示皮层细胞的分布情况。

cortex <- subset(brain, idents = c(1, 2, 3, 4, 6, 7))
# now remove additional cells, use SpatialDimPlots to visualize what to remove
# SpatialDimPlot(cortex,cells.highlight = WhichCells(cortex, expression = image_imagerow > 400
# | image_imagecol < 150))
cortex <- subset(cortex, anterior1_imagerow > 400 | anterior1_imagecol < 150, invert = TRUE)
cortex <- subset(cortex, anterior1_imagerow > 275 & anterior1_imagecol > 370, invert = TRUE)
cortex <- subset(cortex, anterior1_imagerow > 250 & anterior1_imagecol > 440, invert = TRUE)

p1 <- SpatialDimPlot(cortex, crop = TRUE, label = TRUE)
p2 <- SpatialDimPlot(cortex, crop = FALSE, label = TRUE, pt.size.factor = 1, label.size = 3)
p1 + p2

相关文章
|
4天前
|
数据采集 数据可视化 算法
GitHub星标68K!Python数据分析入门手册带你从数据获取到可视化
Python作为一门优秀的编程语言,近年来受到很多编程爱好者的青睐。一是因为Python本身具有简捷优美、易学易用的特点;二是由于互联网的飞速发展,我们正迎来大数据的时代,而Python 无论是在数据的采集与处理方面,还是在数据分析与可视化方面都有独特的优势。我们可以利用 Python 便捷地开展与数据相关的项目,以很低的学习成本快速完成项目的研究。
|
5天前
|
数据采集 数据可视化 算法
GitHub星标68K!Python数据分析入门手册带你从数据获取到可视化
Python作为一门优秀的编程语言,近年来受到很多编程爱好者的青睐。一是因为Python本身具有简捷优美、易学易用的特点;二是由于互联网的飞速发展,我们正迎来大数据的时代,而Python 无论是在数据的采集与处理方面,还是在数据分析与可视化方面都有独特的优势。我们可以利用 Python 便捷地开展与数据相关的项目,以很低的学习成本快速完成项目的研究。 今天给小伙伴们分享的这份Python数据分析入门手册本着实用性的目的,着眼于整个数据分析的流程,介绍了从数据采集到可视化的大致流程。
|
8天前
|
数据可视化 数据挖掘 索引
【python】Python马铃薯批发市场交易价格数据分析可视化(源码+数据集)【独一无二】
【python】Python马铃薯批发市场交易价格数据分析可视化(源码+数据集)【独一无二】
|
8天前
|
数据可视化 数据挖掘 数据处理
【python】python农产品数据分析可视化(源码+论文+数据)【独一无二】
【python】python农产品数据分析可视化(源码+论文+数据)【独一无二】
|
5天前
|
存储 数据可视化 数据挖掘
Python 3 中使用 pandas 和 Jupyter Notebook 进行数据分析和可视化
Python 3 中使用 pandas 和 Jupyter Notebook 进行数据分析和可视化
12 0
|
8天前
|
供应链 数据可视化 搜索推荐
【python】python销售数据分析可视化(源码+论文+数据集)【独一无二】(下)
【python】python销售数据分析可视化(源码+论文+数据集)【独一无二】(下)
|
8天前
|
数据采集 数据可视化 数据挖掘
【python】python销售数据分析可视化(源码+论文+数据集)【独一无二】(上)
【python】python销售数据分析可视化(源码+论文+数据集)【独一无二】(上)
|
6天前
|
数据采集 数据可视化 数据挖掘
数据分析大神养成记:Python+Pandas+Matplotlib助你飞跃!
在数字化时代,数据分析至关重要,而Python凭借其强大的数据处理能力和丰富的库支持,已成为该领域的首选工具。Python作为基石,提供简洁语法和全面功能,适用于从数据预处理到高级分析的各种任务。Pandas库则像是神兵利器,其DataFrame结构让表格型数据的处理变得简单高效,支持数据的增删改查及复杂变换。配合Matplotlib这一数据可视化的魔法棒,能以直观图表展现数据分析结果。掌握这三大神器,你也能成为数据分析领域的高手!
22 2
|
11天前
|
机器学习/深度学习 数据采集 数据可视化
基于爬虫和机器学习的招聘数据分析与可视化系统,python django框架,前端bootstrap,机器学习有八种带有可视化大屏和后台
本文介绍了一个基于Python Django框架和Bootstrap前端技术,集成了机器学习算法和数据可视化的招聘数据分析与可视化系统,该系统通过爬虫技术获取职位信息,并使用多种机器学习模型进行薪资预测、职位匹配和趋势分析,提供了一个直观的可视化大屏和后台管理系统,以优化招聘策略并提升决策质量。
|
12天前
|
机器学习/深度学习 算法 数据挖掘
2023 年第二届钉钉杯大学生大数据挑战赛初赛 初赛 A:智能手机用户监测数据分析 问题二分类与回归问题Python代码分析
本文介绍了2023年第二届钉钉杯大学生大数据挑战赛初赛A题的Python代码分析,涉及智能手机用户监测数据分析中的聚类分析和APP使用情况的分类与回归问题。
27 0
2023 年第二届钉钉杯大学生大数据挑战赛初赛 初赛 A:智能手机用户监测数据分析 问题二分类与回归问题Python代码分析

热门文章

最新文章