TCGA数据分析流程梳理总结(含目录)

作者: 小洁忘了怎么分身 | 来源:发表于2020-02-12 22:12 被阅读0次

    细数下来,写了17篇TCGA相关的笔记,现对其进行完整梳理,一篇年度精品推文横空出世。再次重申:本系列是我的TCGA学习记录,跟着生信技能树B站课程学的,已获得授权。课程链接:https://www.bilibili.com/video/av49363776

    一.数据下载

    有三种下载方式,他们的目的是一样的,就是整理出表达矩阵和临床信息两个表格,使用体验各有不同。
    形如:

    expr[1:4,1:4]
    #>              TCGA-A3-3307-01A-01T-0860-13 TCGA-A3-3308-01A-02R-1324-13
    #> hsa-let-7a-1                         5056                        14503
    #> hsa-let-7a-2                        10323                        29238
    #> hsa-let-7a-3                         5429                        14738
    #> hsa-let-7b                          17908                        37062
    #>              TCGA-A3-3311-01A-02R-1324-13 TCGA-A3-3313-01A-02R-1324-13
    #> hsa-let-7a-1                         8147                         7138
    #> hsa-let-7a-2                        16325                        14356
    #> hsa-let-7a-3                         8249                         7002
    #> hsa-let-7b                          28984                         6909
    
    clinical[1:4,1:4]
    #>              patient.vital_status patient.days_to_death
    #> TCGA-3Z-A93Z                alive                  <NA>
    #> TCGA-6D-AA2E                alive                  <NA>
    #> TCGA-A3-3306                alive                  <NA>
    #> TCGA-A3-3307                alive                  <NA>
    #>              patient.days_to_last_followup              patient.race
    #> TCGA-3Z-A93Z                             4 black or african american
    #> TCGA-6D-AA2E                           135 black or african american
    #> TCGA-A3-3306                          1120                     white
    #> TCGA-A3-3307                          1436                      <NA>
    
    

    1.官方工具GDC

    需要去官网下载对应系统版本的GDC软件,存放在工作目录下。
    关于这个工具前后写了三篇:
    (1)GDC数据下载
    (2)GDC数据整理
    (3)GDC数据整理续集
    这个方法需要扎实的的linux命令行和R语言基础,仅仅是理解代码,也是需要花费一些时间的。

    2.R包TCGA-biolinks

    R包TCGAbiolinks下载数据
    这是一个完全基于R语言的流程,下载的是最新的数据,其实还是基于GDC,更加集成化,操作简单很多,除了参数研究比较费时间,没有发现什么缺点。

    3.R包RTCGA

    使用RTCGA包获取数据
    这是一个数据库式的包,把所有数据都包装进去了,导致包很大,不是最新的数据,但最简单。

    总结一下这三种方法,都是分别下载表达矩阵和meta信息,但由于有的病人既有肿瘤样本,又有正常样本,导致他们并非是一一对应的关系,需要一定的R语言技巧。

    二.差异分析

    TCGA(转录组)差异分析三大R包及其结果对比
    使用转录组三大R包deseq2,limma和edgeR分别进行差异分析,他们的差异基因可视化如下。

    下面这张图是表达矩阵的主成分分析图、差异基因表达量热图以及三个R包得到的差异基因韦恩图。



    跨界拼图不简单呦。

    三.生存分析

    两种方法批量做TCGA生存分析
    单个基因的生存分析可视化是很简单的,有非常好的R包可用,画出来的图要颜值有颜值,要内涵有内涵。


    由于拿到的数据是几百个甚至几万个基因的表达矩阵,可以先进行初步筛选,批量生存分析走起。
    cox回归和log-rank方法均可用于批量生存分析,会对每个基因计算p值。

    四.生存模型构建

    课程中共使用了四种算法构建模型:

    不管用了那种算法,核心都只是几句代码而已。一听就高大上的机器学习,开发很难,应用不难。得到的生存模型可用于另一数据集的预测,即根据构建模型所使用的基因表达量,预测对应的病人生死。如果只有一个数据集,可使用机器学习包caret进行切割,一半是训练集,用于构建模型;另一半是测试集,用于验证模型。

    使用了两种评估指标对模型进行评估

    • C-index
    • AUC值,可用ROC曲线可视化。
      他们的取值都在0.5-1之间,越大越好。其中,ROC曲线还可以将生存时间考虑在内,只是换一个R包(timeROC)。
      考虑生存时间的ROC曲线-timeROC

    还有一个风险因子关联图
    TCGA风险因子关联,那天讲直播课讲到晚上11点,在豆豆的逼迫下完成这篇推文,到最后一刻23:59慌忙发出去,又忘了改标题。


    从上向下三个图分别表示:
    1.每个病人的预测值,按照从小到大排序
    2.每个病人的生存时间,颜色区分生死
    3.热图,挑出的基因在每个样本中的表达量

    五.突变数据

    首先是数据下载。
    TCGA突变数据的下载、整理和可视化
    突变数据在TCGA数据库中存储为maf格式,需要将其读入R语言,有很好的R包可以一键展示数据特征,形如:

    有哪些基因在较多样本中发生了突变,哪个样本突变的基因较多,所占的比例等等都可以一目了然。

    还可以进行mutation signafiture分析
    TCGA突变数据分析-mutation signafiture
    得到如下的图:

    展示了30个signafiture 在所有样本中的分布。

    我们还可以根据某个基因是否突变对样本进行分组,比较指定的基因在两组之间的表达量:


    任意基因的任意分组比较(标题忘记改了)
    也可以比较指定的两个基因在任意分组下的相关性:
    表达矩阵任意两个基因的相关性分析和绘图

    如果有幸发现两个基因本身表达量是相关的,但在根据突变分组后发现这种相关性被打破了,就有可能得到一个新故事,几率很小,可以用循环来筛选。

    只要R语言基础牢固,想要根据什么分组都只是改改代码的问题,包括但不局限于是否突变、人种、性别等等。
    如果需要提问,请先看生信星球答疑公告

    又一个系列完结,接下来我打算学习甲基化芯片了。如果本篇推文对你有用,再看转发赞赏,友谊三连走起呀!


    相关文章

      网友评论

        本文标题:TCGA数据分析流程梳理总结(含目录)

        本文链接:https://www.haomeiwen.com/subject/gyxhfhtx.html