第 18 课

GTEx数据库的使用

课程讲义导读 · 聚焦本课核心概念、分析流程与复现要点

说明:本页适合用于快速回顾本课重点、关键步骤与常用示例。

主讲老师第十八课:GTEx数据库的使用

通常我们在挖掘 TCGA 数据库的时候,会发现该项目纳入的正常组织测序结果是非常少的,也就是说很多病人都不会有他的正常组织的转录组测序结果。比如说乳腺癌吧,1200个左右的转录组数据,其中1100 左右都是肿瘤组织的测序数据,只有区区 100 个左右的正常对照,更有甚至,比如宫颈癌只有 3 个正常对照样品,这个时候我们就需要想办法加大正常组织测序样本量,既然 TCGA 数据库没有,我们就从其他数据库着手,这里值得大力推荐的 是 GTEx 数据库 (GTEx.zip ) ,Genotype-Tissue Expression (GTEx) , 即 :https://gtexportal.org/home/。

先来简单介绍一下 GTEx 数据库的来源。GTEx,The Genotype-Tissue Expression (GTEx) project,首次被提出来是 2013 年,上百位科学家联名在 Nature Genetics 杂志发表的文章首次介绍了“基因型-组织表达工程”,并成立了“基因型-组织表达研究联盟”,也就是 GTEx。2015年,GTEx 发布了第一个阶段性成果,一次性在 Science 杂志上发表三篇研究成果,该成果还被选为封面文章,GTEx 的研究从 175 名死者身上采集到了 1641 个尸检样本,这些样本来自 54 个不同的身体部位,对几乎所有转录基因的基因表达模式进行了观察,从而确定基因组中影响基因表达的特定区域。另外两篇文章的一篇从人所有组织中的基因表达谱进行了描述,证明了组织特异性的某些基因往往决定了组织特异性基因的表达调控。另一篇解释了蛋白变异体如何影响组织中的基因表达。在 2017 年,再次在 nature 发表 4 篇研究成果,GTEx 研究联盟的研究收集并研究了来自 449 名生前健康的人类捐献者的 7000 多份尸检样本,涵盖 44个组织(42 种不同的组织类型),包括 31 个实体器官组织、10 个脑分区、全血、以及来自捐献者血液和皮肤的细胞系,作者利用这些样本研究基因表达在不同组织和个体中有何差异。下面,我们来看下如

何进行 GTEx 数据的下载和整理分析。

1.GTEx 数据下载

相比较 TCGA 数据库,GTEx 数据下载过程相对简单很多1). 进入 GTEx 数据库中数据存储界面 https://gtexportal.org/home/datasets;2). 表达数据下载其中,对我们来说最重要的就是表达矩阵,GTEx 数据库将所有组织的数据进行了打包整理。

下载 gene read counts 文件,共 875Mb,至于 FPKM 和 TPM,根据自己的需要,在后面使用昨天的内容,进行相应转换即可。

3). 注释数据的下载由于表达矩阵里面的样本 ID 是数据库组织者自定义的,因此我们还需要找到样本 ID 的 注释信息点击“GTEx_Analysis_v8_Annotations_SampleAttributesDS”即可进行下载,这样,表达矩阵和注释信息两个基本文件就下载完成了。

2.读取 GTEx 表达数据

下载完成数据后,接下来需要对数据进行整理,首先,读取表达矩阵数据,对此,介绍两个方法。

方法一:read.table()函数

其中,参数 skip 表示读取数据前跳过的行的数目,这个选项在跳过开头注释的时候比较有用

方法二:data.table 包的 fread()函数

在 fread()函数中,skip 可以定义为 2,也可以不定义,其会自动进行查找,对于两种方法,都可以将文件读取进来,由于文件较大,第一种方法可能会相对较慢,而 data.table 包 的 fread()函数就是为读取大文件而设计的,注意了,使用第二种方法的话需要先安装data.table 包。不过,两者得到的结果是一样的。

结果显示,其中第二列为基因的 gene symbol,往后为每个样本的 count 值。

随后,将表达矩阵保存为.rad 文件,以便于后续的读取使用。由于保存后的.rda 文件有2G 多,就没有放在压缩包里,自己运行保存即可,需要一点时间,耐心等待

3.读取 GTEx 表型数据

接着,读取 GTEx 数据库的注释文件并选择列名为 SAMPID 和 SMTS 的列,分别包括样品的 id 信息和其对应的组织来源。

通过 table() 函数查看具体哪些不同组织来源的样品数量。

将统计分析结果整理成数据框的格式。

4.BTK 基因可视化展示

接着,我们来绘制图形展示文献 2 中的主变量分子 BTK 基因在不同器官中的表达情况

4.1 提取基因表达

根据目标基因名字 BTK,进行取子集操作,用了%in%,which()函数,不熟悉的注意复习第一天内容。

接着对行名和列名进行修改,注意,设置的行名和列名中间不要存在空格,自己给后面的分析挖一个巨坑。

4.2 合并表达和表型

使用 merge() 函数将 BTK 的表达数据和组织注释组局进行合并,并对表达数据进行对数转换。

4.3 可视化展示

最后,使用 ggplot2 和 ggpubr 包,对 BTK 基因在不同组织中的表达情况进行可视化展示使用参数 rotate_x_text(60)对 x 轴标签进行 60 度旋转,防止重叠,当然,对文字的编辑,也可以在 AI里面完成。

实际上,这个分布图除了肿瘤研究,对于非肿瘤研究照样可以用,毕竟所有样本是来自于生前健康的捐献者的尸体标本,特别非肿瘤文章,用这个图来开篇,也是个亮点。当然,除了箱线图外,我们还有一种方式来展示这部分数据,就是绘制人体解剖图,来简单介绍一下人体解剖图的绘制方法。

← 返回批次1总导航