空间单细胞|基于图像的数据分析(3)

简介: 空间单细胞|基于图像的数据分析(3)

引言

在这篇指南中,我们介绍了Seurat的一个新扩展功能,用以分析新型的空间解析数据,将重点介绍由不同成像技术生成的三个公开数据集。

  • Vizgen MERSCOPE(用于小鼠大脑研究)
  • Nanostring CosMx空间分子成像仪(用于FFPE人类肺组织)
  • Akoya CODEX(用于人类淋巴结研究)

人肺:Nanostring CosMx Spatial Molecular Imager

这个数据集是通过Nanostring公司的CosMx空间分子成像仪(SMI)生成的。这种SMI技术能够进行多路复用的单分子分析,不仅可以检测RNA和蛋白质,还能够直接应用于固定石蜡包埋(FFPE)组织。数据集包含了从5个非小细胞肺癌(NSCLC)患者身上采集的8个FFPE样本,并且已经对公众开放下载。这个基因检测板涵盖了960种不同的转录本。

在本案例研究中,我们选取了8个样本中的一个(肺样本5,复制品1)进行加载。我们运用了LoadNanostring()函数来解析在公开下载站点上可以获取的数据。

对于这个数据集,我们并没有进行无监督分析,而是将Nanostring的分析结果与我们的Azimuth健康人类肺脏参考数据库进行对比,这个数据库是通过单细胞RNA测序(scRNA-seq)技术建立的。我们使用的是Azimuth软件的0.4.3版本以及人类肺脏参考数据库的1.0.0版本。你可以在指定的链接下载预先计算好的分析结果,这些结果包括了注释信息、预测分数以及UMAP的可视化图。每个细胞平均检测到的转录本数量是249,这在进行细胞注释时确实带来了一定的不确定性。

nano.obj <- LoadNanostring(data.dir = "/brahms/hartmana/vignette_data/nanostring/lung5_rep1", fov = "lung5.rep1")

# add in precomputed Azimuth annotations
azimuth.data <- readRDS("/brahms/hartmana/vignette_data/nanostring_data.Rds")
nano.obj <- AddMetaData(nano.obj, metadata = azimuth.data$annotations)
nano.obj[["proj.umap"]] <- azimuth.data$umap
Idents(nano.obj) <- nano.obj$predicted.annotation.l1

# set to avoid error exceeding max allowed size of globals
options(future.globals.maxSize = 8000 * 1024^2)
nano.obj <- SCTransform(nano.obj, assay = "Nanostring", clip.range = c(-10, 10), verbose = FALSE)

# text display of annotations and prediction scores
head(slot(object = nano.obj, name = "meta.data")[2:5])

##     nCount_Nanostring nFeature_Nanostring predicted.annotation.l1
## 1_1                23                  19               Dendritic
## 2_1                26                  23              Macrophage
## 3_1                74                  51          Neuroendocrine
## 4_1                60                  48              Macrophage
## 5_1                52                  39              Macrophage
## 6_1                 5                   5                   CD4 T
##     predicted.annotation.l1.score
## 1_1                     0.5884506
## 2_1                     0.5707920
## 3_1                     0.5449661
## 4_1                     0.6951970
## 5_1                     0.8155319
## 6_1                     0.5677324

我们可以可视化 Nanostring 细胞和注释,并将其投影到参考定义的 UMAP 上。请注意,对于此 NSCLC 样本,肿瘤样本被注释为“基础”,这是健康参考中最接近的细胞类型匹配。

DimPlot(nano.obj)

细胞类型和表达定位模式的可视化

正如之前的例子所展示的,ImageDimPlot() 这个函数会根据细胞在空间上的分布位置来绘制它们,并依据细胞被指定的类型来对它们进行颜色标记。可以观察到,基底细胞群(也就是肿瘤细胞)在空间上的排列非常紧凑有序,这与我们的预期是一致的。

ImageDimPlot(nano.obj, fov = "lung5.rep1", axes = TRUE, cols = "glasbey")

由于存在多种细胞类型,我们可以突出显示一些选定组的定位。

ImageDimPlot(nano.obj, fov = "lung5.rep1", cells = WhichCells(nano.obj, idents = c("Basal", "Macrophage",
    "Smooth Muscle", "CD4 T")), cols = c("red", "green", "blue", "orange"), size = 0.6)

我们还可以通过几种不同的方式可视化基因表达标记:

VlnPlot(nano.obj, features = "KRT17", assay = "Nanostring", layer = "counts", pt.size = 0.1, y.max = 30) +
    NoLegend()

FeaturePlot(nano.obj, features = "KRT17", max.cutoff = "q95")

p1 <- ImageFeaturePlot(nano.obj, fov = "lung5.rep1", features = "KRT17", max.cutoff = "q95")
p2 <- ImageDimPlot(nano.obj, fov = "lung5.rep1", alpha = 0.3, molecules = "KRT17", nmols = 10000) +
    NoLegend()
p1 + p2

我们可以绘制分子图,以便共同可视化多个标记物的表达,包括 KRT17(基底细胞)、C1QA(巨噬细胞)、IL7R(T 细胞)和 TAGLN(平滑肌细胞)。

# Plot some of the molecules which seem to display spatial correlation with each other
ImageDimPlot(nano.obj, fov = "lung5.rep1", group.by = NA, alpha = 0.3, molecules = c("KRT17", "C1QA",
    "IL7R", "TAGLN"), nmols = 20000)

我们使用 Crop() 函数放大一个富含基底的区域。放大后,我们可以在所有可视化中可视化单个细胞边界。

basal.crop <- Crop(nano.obj[["lung5.rep1"]], x = c(159500, 164000), y = c(8700, 10500))
nano.obj[["zoom1"]] <- basal.crop
DefaultBoundary(nano.obj[["zoom1"]]) <- "segmentation"

ImageDimPlot(nano.obj, fov = "zoom1", cols = "polychrome", coord.fixed = FALSE)

# note the clouds of TPSAB1 molecules denoting mast cells
ImageDimPlot(nano.obj, fov = "zoom1", cols = "polychrome", alpha = 0.3, molecules = c("KRT17", "IL7R",
    "TPSAB1"), mols.size = 0.3, nmols = 20000, border.color = "black", coord.fixed = FALSE)

相关文章
|
4月前
|
存储 编解码 数据可视化
Visium HD空间数据分析、可视化以及整合 (2)
Visium HD空间数据分析、可视化以及整合 (2)
96 3
Visium HD空间数据分析、可视化以及整合 (2)
|
4月前
|
数据可视化 数据挖掘 定位技术
基于geopandas的空间数据分析—geoplot篇(上)
基于geopandas的空间数据分析—geoplot篇(上)
|
4月前
|
存储 编解码 数据可视化
Visium HD空间数据分析、可视化以及整合 (1)
【8月更文挑战第1天】Visium HD空间数据分析、可视化以及整合 (1)
157 4
Visium HD空间数据分析、可视化以及整合 (1)
|
4月前
|
数据可视化 算法 数据挖掘
基于geopandas的空间数据分析-深入浅出分层设色
基于geopandas的空间数据分析-深入浅出分层设色
|
4月前
|
数据可视化 数据挖掘 Python
"揭秘Visium HD黑科技:空间数据分析大揭秘,可视化与整合的艺术之旅!"
【8月更文挑战第20天】近年来,空间转录组技术,特别是Visium HD技术,因其高分辨率与高通量特性,在单细胞生物学领域受到广泛关注。本文通过Python演示了Visium HD数据的全流程分析:从数据准备(读取表达矩阵和空间坐标)、空间数据分析(计算基因表达统计量)、数据可视化(绘制基因表达热图和空间点分布图),到多样本数据整合,为读者提供了实用的分析指南,助力深入探索空间转录组学的奥秘。
92 4
|
4月前
|
数据采集 数据可视化 数据挖掘
数据分析大神养成记:Python+Pandas+Matplotlib助你飞跃!
在数字化时代,数据分析至关重要,而Python凭借其强大的数据处理能力和丰富的库支持,已成为该领域的首选工具。Python作为基石,提供简洁语法和全面功能,适用于从数据预处理到高级分析的各种任务。Pandas库则像是神兵利器,其DataFrame结构让表格型数据的处理变得简单高效,支持数据的增删改查及复杂变换。配合Matplotlib这一数据可视化的魔法棒,能以直观图表展现数据分析结果。掌握这三大神器,你也能成为数据分析领域的高手!
86 2
|
4月前
|
机器学习/深度学习 数据采集 数据可视化
基于爬虫和机器学习的招聘数据分析与可视化系统,python django框架,前端bootstrap,机器学习有八种带有可视化大屏和后台
本文介绍了一个基于Python Django框架和Bootstrap前端技术,集成了机器学习算法和数据可视化的招聘数据分析与可视化系统,该系统通过爬虫技术获取职位信息,并使用多种机器学习模型进行薪资预测、职位匹配和趋势分析,提供了一个直观的可视化大屏和后台管理系统,以优化招聘策略并提升决策质量。
194 4
|
4月前
|
机器学习/深度学习 算法 数据挖掘
2023 年第二届钉钉杯大学生大数据挑战赛初赛 初赛 A:智能手机用户监测数据分析 问题二分类与回归问题Python代码分析
本文介绍了2023年第二届钉钉杯大学生大数据挑战赛初赛A题的Python代码分析,涉及智能手机用户监测数据分析中的聚类分析和APP使用情况的分类与回归问题。
87 0
2023 年第二届钉钉杯大学生大数据挑战赛初赛 初赛 A:智能手机用户监测数据分析 问题二分类与回归问题Python代码分析
|
21天前
|
SQL 数据挖掘 Python
数据分析编程:SQL,Python or SPL?
数据分析编程用什么,SQL、python or SPL?话不多说,直接上代码,对比明显,明眼人一看就明了:本案例涵盖五个数据分析任务:1) 计算用户会话次数;2) 球员连续得分分析;3) 连续三天活跃用户数统计;4) 新用户次日留存率计算;5) 股价涨跌幅分析。每个任务基于相应数据表进行处理和计算。
|
2月前
|
机器学习/深度学习 数据采集 数据可视化
数据分析之旅:用Python探索世界
数据分析之旅:用Python探索世界
30 2