前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【科研猫】基因表达与肿瘤预后:生存分析(1)代码+视频分享

【科研猫】基因表达与肿瘤预后:生存分析(1)代码+视频分享

作者头像
用户6317549
发布2019-11-07 16:34:32
3.9K0
发布2019-11-07 16:34:32
举报
文章被收录于专栏:科研猫科研猫

生存分析(Survival Analysis)是研究生存现象响应时间数据及其统计规律的一种统计学方法,是关联表型与患者预后的重要手段。今天,我们带领大家,看看如何用R语言做生存分析,快速锁定目标基因。

大学本科的统计课上,老师就教我们用SPSS做生存分析,现在看了这么多文献,是不是发现生存分析的出镜率确实挺高的呢。特别是一些队列庞大、随访数据完整的高IF文章,经常能看到下图所示的Kaplan-Meier图。

关于生存分析的重要性,这里就不多赘述了。大家都知道,要比较不同分组患者的生存差异需要有三个数据:

  1. 患者分组,比如高危组vs低危组;
  2. 随访时间;
  3. 随访结局,也就是随访结束时患者的结局

要知道,准备这几个数据还是有点烦的,如果再放到SPSS里面"捣鼓"一下,也要半个小时到一个小时的时间。很多同学会想,SPSS不行,那GraphPad也能够做生存分析,而且界面简洁,操作简单,那我也没必要换其他工具了,其实不然~。

不管SPSS或者GraphPad,虽然它能够帮我们快速高效地实现生存分析,但是这些现有的工具都存在一个非常严重的问题:每次只能做一组样本。如果我要对多个组别批量做生存分析呢?设想一下,我们经常碰到这样的问题:做了差异基因筛选出了上百个基因,但是哪个才更重要呢,我们这个时候可以将基因表达和患者预后进行生存分析,当然预后有差异的基因更为重要。如果有几个基因的话,我们可以用现成工具,一个一个分析,然后把结果一个一个存起来,但是如果有上百个上千个甚至上万个基因呢?就按一个3分钟,100个基因就是300分钟,5个小时!

这个时候,我们就要求助于一种更为高级的方式,那就是R语言。前面我们就说过,R语言可以帮我们实现任何一种统计分析,这其中当然也包括Survival Analysis.

我们先以“NRAS表达与肺癌患者预后”为例,给大家讲解一下使用R语言进行生存分析的具体步骤,学会这个,我们再举一反三,扩展到批量操作中去。

1

下载原始数据

从哪里获取TCGA中肺癌样本的表达值呢?答案是cBioportal,具体链接如下:

  • http://www.cbioportal.org/datasets

找到自己感兴趣的数据集(dataset),点击下载的箭头就能下载。下载下来是一个名叫luad_tcga.tar.gz 的压缩包。

2

提取样本分组信息

为了能够对样本进行分组,我们首先要提取基因表达值,按照基因的表达值对样本进行分组(高表达组 vs 低表达组)。那么样本的表达值存储在什么地方呢?解压前面的压缩包,里面会出现密密麻麻的文件,这其中一个有个文件是我们想要的:

data_RNS_Seq_v2_mRNA_median_Zscore.txt

里面存储了所有基因的表达值,有了表达值就可以按照表达值的高低,对样本进行分组啦~想要哪个基因的表达值,直接查找即可。

3

提取生存数据

有了患者的分组信息,将overall survival date和overall survival status从表型信息中提取出来。那么患者的临床信息存储在哪个文件当中呢?就是压缩包中的data_bcr_clinical_data_patient.txt 文件。这个文件里面有两列:OS_STATUS 和OS_MONTHS 就是我们想要的数据。

4

整理数据,分析绘图

将患者分组、生存数据放到一个表格中,使用R语言的survival包就可以实现生存分析了。

想想也没几步,是不是很简单?这次的教程先到这里,本期第二我们一气呵成,再来跟大家讲讲如何在上述分析的基础上实现批量的操作,一下实现上千上万个基因的生存分析。

未经许可请勿随意转载,

版权事宜由上海辰明律师事务所提供法务支持

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-11-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 科研猫 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档