刚发的NC,想把空间组学学透,那就看这篇。一个技术不够,就多用几个

文摘   2024-12-17 07:04   北京  

不设置🌟有时会收不到公众号内容,code一段时间后会失效,代码在文末

近日,一项关于肺腺癌的前沿研究为我们揭示了肿瘤发展过程中的重要信息。由日本多位研究机构联合开展的研究,通过空间转录组学技术,对30名肺腺癌患者的肿瘤微环境中的基因表达进行详细分析,首次从空间层面解析了肿瘤与其微环境相互作用的关键步骤。这项研究的成果为我们进一步了解肺腺癌的发生机制提供了新的视角,并有望为癌症的早期诊断和个性化治疗奠定基础。

蛋白、RNA、spot的空间基本上都做了,多种空间技术齐上,从不同的分辨率和组学层面发现问题

研究背景

肺腺癌作为全球最常见的肺癌类型之一,其发展过程复杂且具有高度异质性。近年来,随着分子生物学技术的进步,科学家们逐渐认识到,肿瘤的发展不仅仅是肿瘤细胞本身的变异,还与肿瘤微环境中的细胞、分子和信号通路的相互作用密切相关。肿瘤微环境包括免疫细胞、基质细胞、血管和其他细胞类型,这些成分共同作用,影响着肿瘤的生长、转移以及对治疗的反应。

研究方法

本研究由日本东京大学、京都大学等多个研究机构的专家共同完成。研究团队从30名肺腺癌患者的肿瘤组织样本中提取了空间转录组数据,这些样本涵盖了肺腺癌的不同发展阶段,包括非侵袭性和侵袭性肿瘤。研究者通过高通量空间转录组学测序,详细分析了每个患者的肿瘤微环境中基因表达的空间分布,并与传统的组织学分析和临床数据进行了结合。

以下是肿瘤微环境的几个关键的发现,关注的点很适合咱们学习和模仿:

  • 肿瘤微环境的空间异质性:研究者利用空间转录组学技术分析了30名肺腺癌患者的肿瘤样本,并揭示了肿瘤微环境中不同区域的基因表达差异。具体来说,研究团队发现:

    • 非侵袭性阶段在肿瘤的早期(非侵袭性)阶段,免疫细胞(如T细胞、巨噬细胞)和基质细胞的基因表达主要集中在肿瘤的边缘区域。这些区域表现出较高的免疫活性,免疫细胞的基因表达在肿瘤外围形成了一个免疫“带”,似乎在限制肿瘤的扩展

    • 侵袭性阶段:随着肿瘤进展到侵袭性阶段,研究发现肿瘤细胞开始向周围正常组织渗透。在肿瘤的核心区域,肿瘤细胞与基质细胞、血管内皮细胞之间的基因表达相互作用显著增强。特别是在肿瘤核心区,研究者发现肿瘤细胞通过激活某些基因促进了血管生成(如血管内皮生长因子VEGF),从而为肿瘤的扩展和转移提供了通路。

  • 免疫逃逸机制的揭示:该研究进一步揭示了侵袭性肿瘤中免疫逃逸的分子机制。具体发现包括:

    • 在肿瘤的侵袭性阶段,肿瘤核心区域的基因表达模式显示免疫抑制环境的特征。特别是,免疫检查点分子(如PD-1和PD-L1)在肿瘤细胞和周围免疫细胞中的表达明显上升。这些分子的上调与免疫逃逸机制密切相关,即肿瘤细胞通过这些分子抑制免疫系统对其的攻击。

    • 此外,研究还发现了一些特定的免疫相关基因(如CTLA-4)在肿瘤微环境中的高表达,进一步证实了肿瘤细胞通过调节免疫反应来促进其存活和扩展的能力。

  • 肿瘤转移的关键步骤:研究还揭示了肿瘤细胞如何通过与肿瘤微环境的相互作用,推动转移过程的发生。具体而言:

    • 血管生成和肿瘤转移:在肿瘤的核心区域,肿瘤细胞通过与血管内皮细胞的互动,促进了血管生成(如VEGF信号通路的激活)。这些新生血管为肿瘤细胞提供了转移的通道,尤其是在肿瘤侵袭性阶段,血管生成是肿瘤细胞向远处转移的重要步骤。

    • 基质重塑:研究还发现,肿瘤细胞通过释放多种基质金属蛋白酶(MMPs)来重塑肿瘤微环境中的细胞外基质。这一过程有助于肿瘤细胞突破血管壁,进入血液循环,最终导致远程转移。


  • 潜在治疗靶点的发现:研究团队还识别了一些潜在的治疗靶点,这些靶点与肿瘤细胞与微环境的相互作用密切相关。具体发现如下:

    • 在肿瘤的侵袭性阶段,某些基因(如TGF-βIL-6等)表现出上调的趋势,这些基因与免疫逃逸、血管生成及基质重塑等肿瘤发展过程紧密相关。这些基因可能成为未来治疗肺腺癌的新靶点。

    • 此外,研究还发现肿瘤微环境中的一些特定受体(如CXCR4)在肿瘤转移过程中起到了关键作用。靶向这些受体或其相关通路,可能有助于抑制肿瘤细胞的迁移和转移

  • 分子层面的空间基因表达模式:通过空间转录组学数据,研究人员能够详细描述不同区域的基因表达特征,并将其与肿瘤发展过程中的各个阶段进行关联。例如,研究揭示了侵袭性肿瘤中MYCAKT信号通路的激活,这些通路与细胞增殖、存活及肿瘤细胞的侵袭性行为密切相关。研究者还发现,在肿瘤的核心区域,MAPKWnt/β-catenin信号通路的高表达与肿瘤的侵袭性和转移潜力密切相关。

研究意义

本研究的最大贡献在于通过空间转录组学技术揭示了肺腺癌微环境中基因表达的空间动态变化,明确了肿瘤发展过程中不同阶段的关键分子和相互作用。这一发现为我们提供了一个全新的视角,帮助我们更好地理解肿瘤细胞与其微环境之间复杂的相互作用。

此外,这项研究的成果对于癌症的早期诊断和个性化治疗具有重要意义。通过深入分析肿瘤微环境,科学家们可以更精准地识别肿瘤的生物标志物,进而发展出新的检测方法。同时,研究中发现的潜在治疗靶点为肺腺癌的治疗提供了新的思路,有望改善现有的治疗效果,降低治疗副作用,提高患者的生存率。

怎么框选自己ROI区域并放大呢(看👇🏻代码)

library(Seurat) # 加载Seurat包,用于空间转录组学分析library(ggplot2) # 加载ggplot2包,用于数据可视化library(patchwork) # 加载patchwork包,用于组合多个ggplot图形library(dplyr) # 加载dplyr包,用于数据处理
library(RColorBrewer) # 加载RColorBrewer包,用于调色板library(scales) # 加载scales包,用于坐标轴比例调整
set.seed(1234) # 设置随机种子,确保结果可复现
lung <- readRDS("lung_visium.rds") # 读取Seurat对象 (LUAD No. 2 FFPE切片C)
###################################################################################################################### 可视化分界区域:区分高分化(NKX2-1+)和去分化(HNF4A+)区域 ######################################################################################################################
# 生成带有虚线框表示ROI(感兴趣区域)的空间图pdf("zoom_1.pdf", width=14, height=7, pointsize = 18) # 创建PDF文件保存图像,设置页面大小SpatialFeaturePlot(lung, features = c("NKX2-1", "HNF4A"), stroke = NA, image.alpha = 0, pt.size.factor = 2, ncol=2) & scale_fill_gradientn(colours = rev(brewer.pal(11, "Spectral")), limits=c(0, NA), oob=squish) & # 设置颜色渐变,颜色范围反转 NoGrid() & # 不显示网格线 geom_rect(aes(xmin = 200, xmax = 400, ymin = 300, ymax = 450), fill = NA, color = "black", linetype="dashed", linewidth=1.5) # 在图上添加虚线框,表示ROIdev.off() # 关闭PDF输出
# 提取并可视化ROI区域,进一步放大显示该区域max.y <- max(lung@images$slice1@coordinates$imagerow)*lung@images$slice1@scale.factors$lowres # 计算y轴的最大坐标(考虑低分辨率缩放因子)min.y <- min(lung@images$slice1@coordinates$imagerow)*lung@images$slice1@scale.factors$lowres # 计算y轴的最小坐标(考虑低分辨率缩放因子)ROI <- subset(lung, slice1_imagerow > max.y - 450 + min.y & slice1_imagerow < max.y - 300 + min.y & slice1_imagecol < 400 & slice1_imagecol > 200) # 根据坐标子集提取ROI区域
# 计算缩放比例,便于图像尺寸的调整ratio = (max.y - min.y) / (400 - 200)
# 在ROI区域内重新生成空间图像,可进一步放大显示SpatialFeaturePlot(ROI, features = c("NKX2-1", "HNF4A"), stroke = NA, image.alpha = 0, pt.size.factor = 2, ncol=2) & scale_fill_gradientn(colours = rev(brewer.pal(11, "Spectral")), limits=c(0, NA), oob=squish) & # 设置颜色渐变 NoGrid() # 不显示网格线

空间单细胞原位蛋白质组学分析代码,PhenoCyler

# 加载所需的Seurat和其他必要的R包library(Seurat) # v5.1.0library(patchwork)library(dplyr)
# 设置随机种子以确保结果可重复set.seed(1234)
# 请导入PhenoCyler的分割结果(CSV格式)# LoadAkoya函数用于加载Akoya平台生成的表型数据codex.obj <- LoadAkoya(filename = "<INPUT>", type = "qupath", fov = "phenocycler")
# 打印初始细胞数量length(codex.obj$nCount_Akoya)
# 数据过滤:去除低于第1百分位和高于第99百分位的细胞# 根据细胞信号总强度进行过滤high <- quantile(codex.obj$nCount_Akoya, prob=0.99)low <- quantile(codex.obj$nCount_Akoya, prob=0.01)codex.obj <- subset(codex.obj, subset = nCount_Akoya > low & nCount_Akoya < high)
# 打印过滤后的细胞数量length(codex.obj$nCount_Akoya)
# 数据归一化和标准化# 使用CLR(中心对数比)方法对数据进行归一化codex.obj <- NormalizeData(object = codex.obj, normalization.method = "CLR", margin = 2)# 数据缩放以消除不同基因间的范围差异codex.obj <- ScaleData(codex.obj)
# 设置可变特征VariableFeatures(codex.obj) <- rownames(codex.obj)
# 维度缩减(PCA)、聚类和UMAP可视化# 使用前10个主成分进行降维和聚类分析codex.obj <- RunPCA(object = codex.obj, npcs = 10, verbose = FALSE)codex.obj <- RunUMAP(object = codex.obj, dims = 1:10, verbose = FALSE)codex.obj <- FindNeighbors(object = codex.obj, dims = 1:10, verbose = FALSE)codex.obj <- FindClusters(object = codex.obj, verbose = FALSE, resolution = 0.4)
# 绘制UMAP和空间分布图pdf("UMAP_cluster.pdf", width = 18, height = 8)p1 <- DimPlot(codex.obj, reduction = "umap", label = TRUE) # 聚类的UMAP可视化p2 <- ImageDimPlot(codex.obj, size = 0.3, border.size = NA, axes = TRUE) + NoGrid() # 空间分布图# 如需翻转图像,可启用以下注释代码#p2 <- p2 & coord_flip() & theme(aspect.ratio = max(p2$data$y)/max(p2$data$x)) & scale_x_reverse() & scale_y_reverse() & ggtitle(NULL)p1 + p2dev.off()
# 保存处理后的Seurat对象saveRDS(codex.obj, file = "lung_phenocycler.rds")
# 差异表达基因(DEG)分析# 筛选所有细胞群的差异基因,仅输出正向差异基因lung.markers <- FindAllMarkers(codex.obj, only.pos = TRUE, min.pct = 0.25, logfc.threshold = 0.25)# 每个聚类选择表达水平最高的前10个基因top10 <- lung.markers %>% group_by(cluster) %>% top_n(n = 10, wt = avg_log2FC)# 将结果保存为CSV文件write.table(top10, "top10_phenocycler.csv", append = FALSE, quote = TRUE, sep = ",", row.names = TRUE, col.names = NA)
# 保存差异基因对象saveRDS(lung.markers, file = "lung_marker.rds")
# 清理环境变量释放内存rm(list = ls())gc();gc()

原文;引文:Takano, Y., Suzuki, J., Nomura, K. et al. Spatially resolved gene expression profiling of tumor microenvironment reveals key steps of lung adenocarcinoma development. Nat Commun 15, 10637 (2024). 

  • 后苔↩️之前贴子的岸号即可霍得之前的代码,今日关键词:241217

生信钱同学
北京大学在读博士生,记录自己的学习日常🌞分享生信知识:如单细胞和空间测序、多组学分析、宏基因组、病理组学、影像组学等生物信息学、机器学习和深度学习内容🌬
 最新文章