本文最后更新于:2 个月前
1.数据下载
1.1 网页下载
1.2 TCGABiolinks下载
BiocManager
:管理旗下的所有R包,具有少依赖,即时更行的特点
TCGAbiolinks
:TCGA的一个官方数据包,详细教程参考TCGA数据下载—TCGAbiolinks包参数详解
project
:可以使用TCGAbiolinks:::getGDCprojects()$project_id)
得到各个癌种的项目id,总共有45个ID值。对应中文参考TCGA数据库中含有的癌症名称、简写、中文名称对照表
data.category
:可以使用TCGAbiolinks:::getProjectSummary(project)
查看project
中有哪些数据类型,表达谱’data.category=”Transcriptome Profiling’
序号 |
类型[英] |
类型[中] |
1 |
Transcriptome Profiling |
转录组分析 |
2 |
Copy Number Variation |
拷贝数变异 |
3 |
Simple Nucleotide Variation |
简单的核苷酸变异 |
4 |
DNA Methylation |
DNA甲基化 |
5 |
Clinical |
临床数据 |
6 |
Sequencing Reads |
测序(机翻:可能有错) |
7 |
Biospecimen |
生物标本 |
data.type
:筛选要下载的文件的数据类型
workflow.type
:不同的数据类型,有其对应的参数可供选择。workflow.type
有三种类型分别为:
- HTSeq - FPKM-UQ:FPKM上四分位数标准化值
- HTSeq - FPKM:FPKM值/表达量值
- HTSeq - Counts:原始count数
本次需要count数,即workflow.type=“HTSeq - Counts”
。
2. 数据预处理
2.1数据组合
所以我们要做的就是把下载得到的所有文件夹里面的压缩包移动到同一个文件夹,然后把他们解压,让所有的counts文件放在一起,便于我们后面的导入。
- 疑问:
paste()
函数拼接字符串总是有空格,seq
参数设置为""
也无法解决
得到的文件夹如下图所示,下面就便于导入数据了。
2.2counts矩阵生成
我们需要把上一步得到的所有文件导入到同一个表中,其中为EnsembleID,行名为TCGA编码。
疑问:
疑问:
在转换行名中,由于counts文件有5行的注释信息,记得删除5行数据
由于我们的文件名均是以01ae4201-f15c-4790-a7ea-41290808c5fa.htseq
的方式存在,而我们需要的是TCGA编码信息,所以我们需要下载对应的JSON数据进行转换
建立filename与TCGA编码的对应关系,然后根据对应关系替换掉对应的列名
由于EnsembleID中含有版本号,在下一步的ID转换中我们的数据与EnsembleID-GeneName
对照表中EnsembleID的版本号不对应,所以我们需要去掉这里的版本信息,同样的,在后面的对应关系中我们也需要去掉版本号。
2.3ID转换
在进行ID转换前,我们首先需要得到一张EnsembleID-GeneName
对照表,我们有三种方式进行获取。
2.3.1EnsembleID-GeneName
转换表获取
2.3.1.1 R包:GeoTcgaData
GeoTcgaData包中有一个id转换的函数:id_conversion_vector()
, 它可以对人类的各种基因id进行转换。2019年9月第一次发布,目前这个包在CRAN的下载量为1633次,2020年2月20日我在github和CRAN上对它进行了更新,支持转换的id种类更多!同时它对基因id的转换率也很不错。
它支持的种类中就有EnsembleID,所以我们可以使用此方法来转换ID
使用方法也很简单
2.3.1.1 GTF文件替换
2.3.1.3 org.Hs.eg.db包
提取出SYMBOL信息
提取出ENSEMBL信息
整合两个数据,得到ENSEMBL和SYMBOL的对应关系
得到对应关系后进行ensembl_id转换,方法和上面的就是一样的了