问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

新版TCGA数据转录组表达数据下载及整理(R语言)

创作时间:
作者:
@小白创作中心

新版TCGA数据转录组表达数据下载及整理(R语言)

引用
CSDN
1.
https://blog.csdn.net/weixin_52486108/article/details/137387864

TCGA(The Cancer Genome Atlas)是由美国发起的一项大型癌症基因组研究计划,旨在通过基因组分析技术研究癌症中的基因组变化。该项目包含了三十多种癌症的样本数据,每种癌症都有详细的预后随访信息,是一座巨大的数据宝库。本文将详细介绍如何使用R语言下载和整理TCGA的转录组表达数据。

TCGA数据概况

TCGA提供了多种类型的数据,包括:

  • Clinical: 包含病人的一般情况、诊治情况、TNM分期、肿瘤病理、生存情况等。
  • mRNA表达数据: 通过mRNA芯片或者RNAseq测得的mRNA表达量
  • microRNA: microRNA芯片或者microRNA-Seq测得的microRNA表达量
  • Copy number variation: SNP芯片得到的肿瘤组织比对正常组织的染色体上各片段的比值
  • Mutation: 肿瘤组织测序结果相对参考基因组的核苷酸突变,包括插入和缺失等变化
  • Protein: 蛋白芯片测序得到的约200种常见癌症相关蛋白的表达量
  • Methylation: 甲基化芯片测得的DNA甲基化数据,主要为27和450两种芯片的数据

转录组数据的下载

进入TCGA数据下载页面:https://www.cancer.gov/ccg/research/genome-sequencing/tcga

下载步骤

  1. 选择Access TCGA Data

  2. 选择Projects

  3. 左侧的原发部位Primary Site,选择乳腺癌(以乳腺癌为例)

  4. 项目Program选择TCGA

  5. 选择队列Cohort Builder

  6. 在Program栏目选择TCGA

  7. 在Project栏目选择简称TCGA-BRCA

  8. 选择Repository

  9. 在左侧找到Data Category选择转录组数据Transcriptome profiling
    数据类型Data Type选择Gene Expression Quantification

  10. 加入到cart

下载两个文件分别是Cart文件和Metadata文件

下载完成后,将Cart文件解压到指定文件夹中。打开其中一例数据,可以看到包含以下项目:

  • gene_id:此处的为ENSMBLE格式
  • gene_name:symbol格式
  • unstranded:基因的表达counts值
  • tpm_unstranded:TPM值
  • fpkm_unstranded:FPKM值

mRNA-Seq数据分为4种:

  • Counts:测序的reads中比对到某个基因上的计数
  • TPM:用来衡量转录本表达丰度的一种量度方式
  • FPKM:用来衡量转录本表达丰度的一种量度方式
  • FPKM-UQ:通过上四分位点进行标准化后的FPKM

数据格式转换参考:https://docs.gdc.cancer.gov/Data/Bioinformatics_Pipelines/Expression_mRNA_Pipeline/

使用R语言数据整理FPKM数据

以下是使用R语言整理FPKM数据的代码示例:

library(rjson)
library(limma)
setwd("C:\\Users\\TCGA-BRCA") #此处我将下载的数据,均放在TCGA-BRCA文件夹中,更改为自己的文件夹
metafile="metadata.cart.2024-03-24.json" #下载的metadata文件的名称
gdcfliename="gdc_download_20240324_144347.209765" #cart文件的名称
path1="gdc_download_20240324_144347.209765\\" #cart文件名+“\\”
outfilename="TCGA-STAD_FPKM.txt" #输出表达矩阵文件的名称
#为了方便大家使用,大家只用修改以上内容
json = jsonlite::fromJSON(metafile)
id = json$associated_entities[[1]][,1]
sample_id = sapply(json$associated_entities,function(x){x[,1]})
file_sample = data.frame(sample_id,file_name=json$file_name)  
count_file <- list.files(gdcfliename,pattern = '*gene_counts.tsv',recursive = TRUE)
count_file_name <- strsplit(count_file,split='/')
count_file_name <- sapply(count_file_name,function(x){x[2]})
matrix = data.frame(matrix(nrow=60660,ncol=0))
for (i in 1:length(count_file_name)){
  path = paste0(path1,count_file[i])
  data<- read.delim(path,fill = TRUE,header = FALSE,row.names = 1)
  colnames(data)<-data[2,]
  data <-data[-c(1:6),]
  data <- data[7] 
  colnames(data) <- file_sample$sample_id[which(file_sample$file_name==count_file_name[i])]
  matrix <- cbind(matrix,data)
}
sample1 = paste0(path1,count_file[1])
names=read.delim(sample1,fill = TRUE,header = FALSE,row.names = 1)
colnames(names)<-names[2,]
names <-names[-c(1:6),]
names = names[,1:2]
same=intersect(rownames(matrix),rownames(names))
matrix=matrix[same,]
names=names[same,]
matrix$symbol=names[,1]
matrix=matrix[,c(ncol(matrix),1:(ncol(matrix)-1))]
write.table(matrix,file=outfilename,row.names = F,quote = F,sep = "\t")  

以上就是TCGA转录组数据的下载和整理过程。通过这些步骤,研究人员可以获取高质量的基因表达数据,用于后续的生物信息学分析。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号