生信加临床数据(生信分析解读TCGA肿瘤数据库的肿瘤数据)
生信加临床数据(生信分析解读TCGA肿瘤数据库的肿瘤数据)AE库中的Metadata数据还包括两种类型的数据phenoData,featureData,其实它们存的就是样品数据的一些描述信息,比如分组,取样部位,样品名,注释信息等。现在的问题是,什么样的文件里会存着我们需要的样本文档名("file_name")以及TCGA 样本名("entity_submitter_id"),想想自己下载的数据里,有一个Metadata数据,这个数据其实在ArrayExpress数据库中也有,这个数据库的数据存储结构是一个`ExpressionSet`类包含下面几部分:打开长长的文档看一下数据形式,依次是:到此,肾透明细胞癌患者的miRNA表达数据下载就完成了。我们了解了数据的格式之后,还需要对这些独立的文件夹做一件事,就是将他们整理成表达矩阵的格式,然后用于后面的分析,这就需要对TCGA数据进行处理,主要包括:
上一期我们讲了一下怎么下载TCGA数据库的肿瘤数据,接着上节所讲的,我们来解读一下这些数据。
了解数据格式我们一共下载了616个关于肾透明细胞癌的file,下载下来的miRNA表达量都是每个样本一个文件夹,格式如下:
打开上面其中一个文件夹看看数据的形式:里面是一个.txt文档,
但有些文件夹里含有三个文档:logs 2个.txt文档。我们只需要每个文件夹下的名字特别长的那个.txt文档,这个里面就是每个样本的miRNA表达量数据。
打开长长的文档看一下数据形式,依次是:
- miRNA_ID:miRBase v21数据库中收录的miRNA名称 1881个;
- read_count:miRNA原始reads数,用于表达定量;
- reads_per_million_miRNA_mapped:每百万reads中来自于该miRNA的reads数,简称RPM;
- cross-mapped:miRNA是否比对到多个位置;
到此,肾透明细胞癌患者的miRNA表达数据下载就完成了。
整理数据我们了解了数据的格式之后,还需要对这些独立的文件夹做一件事,就是将他们整理成表达矩阵的格式,然后用于后面的分析,这就需要对TCGA数据进行处理,主要包括:
- 1、多个样本表达值合并:即只需要将每个文件夹下的文本列(read_count列)合并即可。
- 2、对合并好的数据,需要将样本名替换成类似TCGA-ID 的格式 如:TCGA-B2-5633-01A-01R-A27D-13。(了解一下TCGA的命名规则:https://blog.csdn.net/qq_35203425/article/details/80851862)
现在的问题是,什么样的文件里会存着我们需要的样本文档名("file_name")以及TCGA 样本名("entity_submitter_id"),想想自己下载的数据里,有一个Metadata数据,这个数据其实在ArrayExpress数据库中也有,这个数据库的数据存储结构是一个`ExpressionSet`类包含下面几部分:
AE库中的Metadata数据还包括两种类型的数据phenoData,featureData,其实它们存的就是样品数据的一些描述信息,比如分组,取样部位,样品名,注释信息等。
那么我们从TCGA库下载的Metadata数据也存放的是类似于AE库的样品的一些信息等。
下面来看看从TCGA库下载的Metadata数据长啥样:这是我下载的数据文件夹,里面有metadata数据。
metadata是以.json作为后缀类似文本的文件,刚才说了它里面记着每个样本在数据库中描述信息等。
我们打开来认识一下这个文件:
1、我用notepad 打开的文件如下,分号之前是每个属性,分号后是属性值,例如 "data_type": "miRNA Expression Quantification" 表示下载的是miRNA表达数据。
2、我一共下载了616个file的miRNA表达数据的信息,它们的描述信息全部都被记录在metadata文件中,我们需要知道样本与样本之间是怎么识别的,在上面的图片中,我用蓝色的方框圈出来了,两个背对着的花括号 ","表示两个样本间的识别符。
3、找到任意一个样本文件夹可以对应metadata数据中的属性值。
通过以上两个属性值我们可以在metadata数据中找到它对应的TCGA 样本名("entity_submitter_id")为 :"TCGA-B8-5549-01A-01R-1540-13"。
616个file每一个都有对应的TCGA 样本名,我们可以批量操作进行提取。
现在会下载数据以及解读metadata里的数据关系了,下期我们来解决文章提出的两个问题:
- 将每个样本的miRNA表达量进行合并;
- 同时更改样本名;
也就是提取每个样本的原始read_count值,或者RPM值,然后再修改样本名,透漏一下合并之后最终格式如下:(部分数据,TCGA 样本名太长了,没显示全啊)。