样本名称转化为TCGA样本编号
数据下载之后如下,每个样本有一个文件夹,里面都会有一个压缩包,解压后会生成一个txt文本,里面含有我们需要的数据;
把每个压缩包的名称变成TCGA样本编号需要借助我们之前从网站下载数据相应的json文件:TCGA数据库的利用(一)—— 数据下载!json文件打开后,会发现每个样本名称跟它的TCGA样本编号被一个大括号所包含,形成一一对应的关系;
这里我就利用了python脚本把样本名与TCGA样本编号建立一个字典,然后进行逐一修改,
修改后的结果如下(注意:修改后的文件还是一个以.gz结尾的压缩包,这里只是修改了前面的名称而已):
数据合并
把下载的所有样本名称转化为TCGA样本编号之后,就需要进行数据整合,把所有样本数据整合到一个文件中;
这里先创建一个空矩阵作为公共矩阵,利用R语言中的gzfile函数读取第一个样本压缩包里面的数据转化为一个二维矩阵,TCGA样本编号设置为数据的列名,基因的ensembl编号设置为数据的行名;
把这个二维矩阵赋给那个公共矩阵,随后的样本数据写一个for循环,读取方式跟第一个相同,不同的是这里创建好的二维矩阵不是赋给公公矩阵,而是以第一列为参照列与前面合成的公共矩阵进行合并,最终可以把最后的矩阵写入一个csv文件夹中;
数据合并结果如下:
基因注释
这一步是把行名为基因的ensembl编号转化为基因官方id,这里利用的是R程序包clusterProfiler和org.Hs.eg.db(这种注释方法会导致注释的基因大大减少):
以上使用的R程序包基本上都需要下载,R语言自身没有,下载方式参照下面的两行代码(把里面的包的名称换成自己需要的名称即可)
最终处理后的数据如下,接下来我们既可以正常地进行分析了,最好在分析之前把处理好的数据备份一下防止数据损坏。