众所周知,我们一直在不遗余力的传播生物信息学数据分析技能,但完全没有鼓励大家做什么科研灌水。虽然说大家总会把一些脏水泼在我身上,但实际上我们做知识整理和分享的目标是让几百万生命科学领域从业者都获得一些数据分析的思维,尤其是复用那些海量的公共数据,节约纳税人负担的科研经费。
比如,最基础的也是最常见的一个癌症领域需求是说明为什么要在某疾病研究某个基因,其实就可以完完全全是使用TCGA数据库的公开信息,如下所示:
恰好,我们三年前的马拉松授课学员已经在TCGA数据挖掘方面出师并且带领他的团队开发出来了一个超级棒的能解决绝大部分文章的figure1需求的工具,借花献佛分享给大家!
下面是原文:
TCGA是最大的多组学数据集之一,涉及33种不同类型的癌症、超过 20000个样本,包括外显子组测序、RNA 测序、microRNA 测序、拷贝数变异、蛋白质组和甲基化组。已经开发了几种在线工具来提供TCGA数据的生物信息分析。GEPIA2,以在泛癌水平和特定癌症亚型方式上进行基因表达定量。癌症基因组学的cBioPortal包含来自包括TCGA在内的众多癌症研究的数据集,使研究人员能够探索每个基因和样本的遗传改变。Kaplan-Meier提供泛癌生存分析。GSCA提供TCGA数据的基因集癌症分析,包括基因组、药物基因组和免疫基因组基因集。TIMER2.0是一个用于跨TCGA 癌症免疫渗透的网络服务器。MethSurv 提供了一个使用 TCGA 甲基化组数据执行生存分析的网络工具。除了这些在线网站工具之外,还有一些用于TCGA 数据下载、基因组和表达分析的 R 软件包,例如 TCGAbiolinks 和 IBOR。然而,目前还没有用于泛癌表达以及基因表达与 TMB、MSI、TIME 和启动子甲基化之间相关性分析的集成R包。因此,我们开发了一个用于TCGA多组学数据的泛癌分析和可视化R包,名为TCGAplot。
下载
TCGAplot R 包的源代码可在 https://github.com/tjhwangxiong/TCGAplot 上公开获取。
下载地址1:https://github.com/tjhwangxiong/TCGAplot/releases/download/v4.0.0/TCGAplot_4.0.0.zip
下载地址2(百度网盘):
https://pan.baidu.com/s/1I81yfkJbJAg5ZNRyUsOxPw?pwd=wd5j
下载后本地安装即可。
结果
数据整理
TCGAplot R包中集成的内置数据包括TPM表达矩阵、肿瘤突变负荷(TMB)、微卫星不稳定性(MSI)、免疫细胞比例、免疫评分、启动子甲基化和临床信息(图1)。
图 1 TCGAplot R 包中内置数据的摘要。 包括配对和未配对的TPM矩阵。Meta、TMB、MSI、启动子甲基化、免疫细胞比率和免疫评分也包含在该数据中。所有这些内置数据都可以提取用于用户定义的函数。
使用TCGAbiolinks R包从TCGA下载TPM矩阵,随机删除重复的样本,所有样本中TPM值为0的基因均被排除,最终含有蛋白质编码基因的TPM矩阵显示为log2(TPM+1),并附有癌症类型和组(肿瘤、正常)信息。使用 TCGAbiolinks R包下载体细胞突变和DNA甲基化beta值数据,选择TSS1500岛区域内的探针作为启动子区域。使用cBioPortalData R包 下载 TCGA患者的MSI值。免疫细胞比例从癌症免疫景观下载。免疫评分,包括ESTIMATE、Immune和Stromal评分,是用基于TPM矩阵的R包计算的。
泛癌表达分析
泛癌症表达分析包括使用pan_boxplot绘制33种TCGA癌症的未配对肿瘤-正常箱线图(图 2a)以及pan_paired_boxplot函数绘制15种TCGA癌症的超过20对样本的配对肿瘤-正常箱线图(图 2b)。此外,通过使用pan_tumor_boxplot函数可以实现单个基因在33种肿瘤样本(无正常样本)中的泛癌表达(图2c)。
图2 泛癌表达分析。a KLF7的泛癌表达,函数为“pan_boxplot(gene = "KLF7", Palette = "jco", legend = "right")”。b 配对样本的 KLF7 泛癌表达,函数为“pan_paired_boxplot (gene = "KLF7", Palette = "jco", legend = "right")”。TCGA 中仅包括15种癌症,其配对样本超过20个。c 使用“pan_tumor_boxplot("KLF7")”函数显示KLF7在33种肿瘤样本(无正常样本)中的泛癌表达。ns,不显着;*p<0.05,**p<0.01,***p<0.001,****p<0.0001。
泛癌相关性分析
我们还提供了分析单基因表达与TMB和MSI之间相关性的函数。结果通过雷达图可视化(图 3a、b)。
图3 基因表达与TMB、MSI的相关性。a KLF7和TMB的相关性函数“gene_TMB_radar("KLF7")”。KLF7与CHOL、COAD、ESCA、HNSC、KIRP、OV和THCA中的TMB呈负相关,而与SKCM中的 TMB 呈正相关。b 通过函数“gene_MSI_radar("KLF7")”计算 KLF7 表达与 MSI 之间的相关性。KLF7与COAD、DLBC、HNSC和STAD中的MSI呈负相关,而与LUSC中的MSI呈正相关。*p<0.05,**p<0.01。
免疫疗法彻底改变了癌症患者的治疗方法,并使TIME领域焕发活力。因此,我们还提供了一些函数来执行单个基因与免疫相关基因之间的关联,包括免疫检查点基因(ICG)(图4a)、趋化因子(图4b)、趋化因子受体(图4c)、免疫 刺激剂(图4d)和免疫抑制剂(图4e)。此外,还提供了“lowcol”和“highcol”两个颜色参数供用户分别定义热图中低点和高点的颜色。
图4 单个基因与免疫相关基因的相关性。 a KLF7和ICG之间的相关性函数“gene_checkpoint_heatmap("KLF7", method="pearson", lowcol="blue", highcol="red")”。b KLF7和趋化因子的相关性函数“gene_chemokine_heatmap("KLF7")”。c KLF7 和趋化因子受体之间的相关性函数“gene_receptor_heatmap("KLF7")”。d KLF7和免疫刺激分子的相关性函数“gene_immusstimulator_heatmap("KLF7")”。e KLF7和免疫抑制剂的相关性函数“gene_immuinhibitor_heatmap("KLF7")”。
此外,还可以分析基因表达与免疫浸润之间的相关性,包括免疫细胞比例(图5a)、免疫评分(图5b、c)。
图5 单基因与免疫浸润的相关性。a KLF7和免疫细胞比例的相关性函数“gene_immucell_heatmap("KLF7")”。b 通过函数“gene_immunescore_heatmap("KLF7")”热图显示 KLF7 和免疫评分之间的相关性。c 使用函数“gene_immunescore_triangle("KLF7")”以三角形显示 KLF7 和免疫评分之间的相关性。
泛癌Cox回归分析
Cox 回归模型用于临床研究中的生存分析,通过估计与特定风险因素(例如单个基因的表达)相关的给定终点的风险比 (HR)。我们提供了进行泛癌 Cox 回归分析的功能,无论是否进行年龄调整以及通过森林图可视化(图 6a、b)。
图6 泛癌Cox回归分析。a使用函数“pan_forest("KLF7", adjustment=F)”对TCGA癌症中的KLF7进行泛癌Cox回归分析。KLF7在CESE、HNSC、LGG、PAAD中作为危险因子,在KIRC和READ中作为保护因子。b 使用函数“pan_forest("KLF7", adjustment=T)”对TCGA癌症中的KLF7进行年龄调整的泛癌Cox回归分析。年龄调整后,KLF7在READ中不再起到保护因素的作用。
基于基因集的泛癌相关性分析
有时驱动TMB的是一个基因集(而不是一个基因),因此我们还提供了分析基因集表达与TMB和MSI 之间相关性的函数。结果通过雷达图可视化(图 7a、b)。
图7 基因集与TMB、MSI的相关性。a 通过函数“gs_TMB_radar("KEGG_APOPTOSIS")”分析KEGG_APOPTOSIS基因集和TMB之间的相关性。b 通过函数“gs_MSI_radar("KEGG_APOPTOSIS")”计算KEGG_APOPTOSIS基因集与MSI之间的相关性。*p<0.05,**p<0.01。
我们还提供了一些函数来执行基因集和免疫相关基因之间的关联,包括ICG(图8a)、趋化因子(图8b)、趋化因子受体(图8c)、免疫刺激剂(图8d)、 和免疫抑制剂(图8e)。
图 8 基因组与免疫相关基因之间的相关性。 a KEGG_APOPTOSIS 基因集与 ICG 之间的相关性函数“gs_checkpoint_heatmap("KEGG_APOPTOSIS")”。b KEGG_APOPTOSIS 基因集与趋化因子之间的相关性函数“gs_chemokine_heatmap("KEGG_APOPTOSIS")”。c KEGG_APOPTOSIS 基因集与趋化因子受体之间的相关性函数“gs_receptor_heatmap("KEGG_APOPTOSIS")”。d KEGG_APOPTOSIS 基因集与免疫刺激剂的相关性函数“gs_immusstimulator_heatmap("KEGG_APOPTOSIS")”。e KEGG_APOPTOSIS 基因集与免疫抑制剂的相关性函数“gs_immuinhibitor_heatmap("KEGG_APOPTOSIS")”。
癌症类型特异性表达分析
除了泛癌分析之外,我们还为特定癌症类型的样本提供了多种功能。单个基因的表达可以根据临床数据进行分组,包括未配对(图9a)和配对(图9b)肿瘤正常样本、年龄(图9c、d)、性别(图9e)和分期 (图9f)。
图9 癌症类型特异性表达分析。 a COAD 中 KLF7 的表达式,使用函数“tcga_boxplot("COAD","KLF7")”。b 使用函数“paired_boxplot("COAD","KLF7")”在配对COAD样本显示KLF7。c 使用函数“gene_age("COAD","KLF7")”按年龄分组的COAD样本显示KLF7 的表达。d 使用函数“gene_3age("COAD","KLF7")”按三个年龄组分组的 COAD样本显示KLF7。e 使用函数“gene_gender("COAD","KLF7")”按性别分组的COAD样本显示KLF7 f 使用函数“gene_stage("COAD","KLF7")”按分期分组的COAD样本显示KLF7。
此外,我们还提供了基因集的癌症类型特异性分析。基因集的表达可以根据临床数据进行分组,包括未配对(图10a)和配对(图10b)肿瘤正常样本、年龄(图10c、d)、性别(图10e)和分期 (图10f)。
图10 癌症类型特异性基因集分析。a 使用函数“gs_boxplot("COAD","HALLMARK_DNA_REPAIR")”在COAD中显示基因集“HALLMARK_DNA_REPAIR”的表达。b 使用函数“gs_paired_boxplot("COAD","HALLMARK_DNA_REPAIR")”在配对 COAD样本中显示基因集“HALLMARK_DNA_REPAIR”的表达。c 使用函数“gs_age("COAD","HALLMARK_DNA_REPAIR")”按年龄分组的COAD 样本中显示基因集“HALLMARK_DNA_REPAIR”的表达。d 使用函数“gs_3age("COAD","HALLMARK_DNA_REPAIR")”按三个年龄组分组的 COAD样本中显示基因集“HALLMARK_DNA_REPAIR”的表达。e 使用函数“gs_gender("COAD","HALLMARK_DNA_REPAIR")”按性别分组的 COAD样本中显示基因集“HALLMARK_DNA_REPAIR”的表达。f 使用函数“gs_stage("COAD","HALLMARK_DNA_REPAIR")”按分期分组的 COAD样本中显示基因集“HALLMARK_DNA_REPAIR”的表达。
特定类型癌症的肿瘤样本可以根据单个基因的表达情况进一步分组,并且可以识别高表达组和低表达组之间的差异表达基因(DEG)(图11a)并使用Gene Set进行分析 富集分析(GSEA)包括GSEA-GO(基因本体)(图11b)和GSEA-KEGG(京都基因和基因组百科全书)(图11c)。
图11 单基因高表达组和低表达组之间的DEGs分析。a使用函数 “gene_deg_heatmap("COAD","KLF7")”热图显示COAD中 KLF7高表达组和低表达组之间的DEG。b 使用函数“gene_gsea_go("COAD","KLF7")”对COAD中KLF7高表达组和低表达组之间的DEG进行GSEA-GO分析,并显示前5个GO途径。c 使用“gene_gsea_kegg("COAD","KLF7")”函数对COAD中KLF7高表达组和低表达组之间的DEG进行GSEA-KEGG分析,并显示前5条KEGG通路。
癌症类型特异性诊断分析
受试者工作特征(ROC)曲线和曲线下面积(AUC)被广泛用于检查诊断模型的敏感性和特异性。我们提供使用特定类型癌症中单个基因的表达来绘制ROC曲线并计算诊断模型的AUC的函数。显示了CHOL图 12a)、HNSC(图 12b)和 UCEC(图 12c)中KLF7的示例。
图 12 癌症类型特异性诊断分析。 基于CHOL中 KLF7 表达的诊断模型的 ROC曲线,函数为“tcga_roc("CHOL","KLF7")”。b 基于HNSC中KLF7表达的诊断模型的 ROC 曲线,函数为“tcga_roc("HNSC","KLF7")”。c 基于 UCEC中KLF7表达的诊断模型的ROC曲线,函数为“tcga_roc("UCEC","KLF7")”。KLF7 在这些类型的癌症中显示出显着的诊断价值。
癌症类型特异性相关性分析
我们提供特定类型癌症的相关性分析,包括基因-基因(图13a,b)、基因-甲基化(图13c)相关性分析。此外,对于相关基因,还可以进行GO富集分析(图13d)。
图 13 癌症类型特异性相关性分析。 a COAD中KLF4和KLF7相关性函数“gene_gene_scatter("COAD","KLF4","KLF7", Density="F")”。b COAD 中 KLF4 和 KLF7之间的相关性函数“gene_gene_scatter("COAD","KLF4","KLF7", Density="T")”,显示基因表达密度。c 通过函数“gene_methylation_scatter("COAD","KLF7")”,KLF7 表达与 COAD 中启动子甲基化之间的相关性。d COAD 中与 KLF7 显着正相关或负相关的基因的表达热图和富集GO通路,函数为“gene_coexp_heatmap("COAD","KLF7")”。
癌症类型特异性生存分析
可以进行基于特定类型癌症中单个基因的表达(图14a)或甲基化(图14b)水平的存活分析。
图14 癌症类型特异性生存分析。 使用函数“tcga_kmplot("COAD","KLF7")”对COAD中KLF7表达进行生存分析的 KM 图。b 使用函数“methy_kmplot("COAD","KLF7")”对COAD中KLF7 甲基化的生存分析进行 KM 图。
网络建设
用户还可以使用gene_network_go和gene_network_kegg函数将单个基因或基因集与GO术语或KEGG路径的联系描述为网络(这个其实是Y叔R包的内容,纯粹是应审稿人要求增加的)。
图15 网络建设。 Cnetplot 用于将基因集和 GO 术语之间的联系描述为具有“gene_network_go(c("LAMA3","LAMC2","TNC","OSMR"))”函数的网络。b Cnetplot 用于将基因组和 KEGG 通路之间的联系描述为具有“gene_network_kegg(c("LAMA3","LAMC2","TNC","OSMR"))”功能的网络。
内置数据提取
我们包中的所有内置数据都可以提取用于用户定义的函数,包括TPM表达矩阵、TMB、MSI、免疫细胞比例、免疫评分、启动子甲基化和元信息,其函数如表1所示。因此,用户可以执行用户定义的功能,利用 TCGA 多组学数据进行更独特的分析。
函数名 | 功能 |
---|---|
get_tpm(cancer) | 在 TCGA 中提取特定类型癌症的 TPM 矩阵。例如,get_tpm("COAD") |
get_paired_tpm(cancer) | 使用 TCGA 中的配对样本 (n>20) 提取特定类型癌症的 TPM 矩阵。例如,get_paired_tpm("COAD") |
get_meta(cancer) | 提取TCGA中特定类型癌症的临床信息。例如,get_meta("COAD") |
get_tmb() | 提取TCGA中所有样本的TMB矩阵 |
get_msi() | 提取TCGA中所有样本的MSI矩阵 |
get_methy() | 打印整个甲基化矩阵的链接供用户下载 |
get_promoter_methy() | 提取特定类型肿瘤的启动子甲基化 |
get_immu_ratio() | 提取TCGA中所有样本的免疫细胞比例 |
get_immuscore() | 提取TCGA中所有样本的免疫评分 |
get_cancers() | 返回TCGA中33种癌症的样本汇总 |
get_paired_cancers() | 返回TCGA中包含20多个配对样本的15种癌症的样本摘要 |
结论
TCGAplot 提供了一个用户友好的界面,用于分析TCGA泛癌多组学数据,并使用可视化技术使用户能够探索多种类型肿瘤的共性和异质性。具体而言,已经开发了多种函数来执行泛癌配对/未配对表达分析、相关性分析、生存分析以及用户定义的函数分析。总的来说,我们开发了一个R包,用于TCGA多组学数据的泛癌分析和可视化。
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有