TCGA 癌症基因組圖譜(TCGA)是國家癌症研究所(NCI)和國家人類基因組研究所(NHGRI)之間的合作,收集了33種癌症類型的大量臨牀和基因組數據。 整個TCGA數據集的基因表達超過2PB,數據類型包括CNV分析,SNP基因分型,DNA甲基化,miRNA分析,外顯子組測序和其他類型的數據。 可以在cancergenome.nih.gov上了解有關TCGA的更多信息。 數據現在位於Genomic Data Commons Portal。 有很多方法可以訪問TCGA數據而無需實際下載和解析來自GDC的數據。 我們將在下面介紹更多這些內容。 但首先,讓我們看一個R包,它提供方便,直接的TCGA數據訪問。
# Try http:// if https:// doesn't work. source("https://bioconductor.org/biocLite.R") # Install the main RTCGA package biocLite("RTCGA") # Install the clinical and mRNA gene expression data packages biocLite("RTCGA.clinical") biocLite("RTCGA.mRNA")
讓我們加載RTCGA包,並使用infoTCGA()函數獲取有關每種癌症類型可用數據類型的一些信息。
library(RTCGA) infoTCGA()
RTCGA臨牀數據的生存分析 接下來,讓我們加載RTCGA.clinical軟件包,並獲得一些有關可用內容的幫助。
library(RTCGA.clinical) ?clinical
這告訴我們所有可用於每種癌症類型的臨牀數據集。 如果我們只關注乳腺癌,請查看數據有多大! 僅此數據中有1098行乘3703列。 我們來看一些變量名。 這裏要小心使用View(),數據太大,使用view會可能卡。
我們將使用RTCGA包中的survivalTCGA()函數從臨牀數據中提取生存信息。 它通過查看生命狀態(死亡或活着)並創建一個時間變量來實現這一點,該變量既可以是死亡天數,也可以是隨訪天數。 查看有關生存TCGA的幫助以獲取更多信息。 您可以爲其提供一個臨牀數據集列表,以及要提取的變量的字符向量。 讓我們來看看乳腺癌,卵巢癌和多形性膠質母細胞瘤。 我們只是提取癌症類型(admin.disease_code)。
# Create the clinical data clin <- survivalTCGA(BRCA.clinical, OV.clinical, GBM.clinical, extract.cols="admin.disease_code") # Show the first few lines head(clin) > head(clin) times bcr_patient_barcode patient.vital_status admin.disease_code 1 3767 TCGA-3C-AAAU 0 brca 2 3801 TCGA-3C-AALI 0 brca 3 1228 TCGA-3C-AALJ 0 brca 4 1217 TCGA-3C-AALK 0 brca 5 158 TCGA-4H-AAAK 0 brca 6 1477 TCGA-5L-AAT0 0 brca
> # How many samples of each type? > table(clin$admin.disease_code) brca gbm ov 1098 595 576
# Tabulate by outcome xtabs(~admin.disease_code+patient.vital_status, data=clin) %>% addmargins() patient.vital_status admin.disease_code 0 1 Sum brca 994 104 1098 gbm 149 446 595 ov 279 297 576 Sum 1422 847 2269
現在讓我們針對疾病代碼運行Cox PH模型。 默認情況下,它會將乳腺癌作爲基線,因爲按字母順序排在第一位。 但是如果你想使用因子(),你可以重新排序。
> coxph(Surv(times, patient.vital_status)~admin.disease_code, data=clin) Call: coxph(formula = Surv(times, patient.vital_status) ~ admin.disease_code, data = clin) coef exp(coef) se(coef) z p admin.disease_codegbm 2.887 17.948 0.113 25.6 <2e-16 admin.disease_codeov 1.547 4.697 0.115 13.4 <2e-16 Likelihood ratio test=904 on 2 df, p=0 n= 2269, number of events= 847
這告訴我們,與基線brca組相比,GBM患者的危害增加了約18倍,卵巢癌患者的生存率降低了約5倍。 讓我們創建一個生存曲線,用Kaplan-Meier圖顯示它,並顯示前5年存活率的表格。
sfit <- survfit(Surv(times, patient.vital_status)~admin.disease_code, data=clin) summary(sfit, times=seq(0,365*5,365)) Call: survfit(formula = Surv(times, patient.vital_status) ~ admin.disease_code, data = clin) admin.disease_code=brca time n.risk n.event survival std.err lower 95% CI upper 95% CI 0 1096 0 1.000 0.00000 1.000 1.000 365 588 13 0.981 0.00516 0.971 0.992 730 413 11 0.958 0.00851 0.942 0.975 1095 304 20 0.905 0.01413 0.878 0.933 1460 207 9 0.873 0.01719 0.840 0.908 1825 136 14 0.799 0.02474 0.752 0.849 admin.disease_code=gbm time n.risk n.event survival std.err lower 95% CI upper 95% CI 0 595 2 0.9966 0.00237 0.9920 1.0000 365 224 257 0.5110 0.02229 0.4692 0.5567 730 75 127 0.1998 0.01955 0.1649 0.2420 1095 39 31 0.1135 0.01617 0.0858 0.1500 1460 27 9 0.0854 0.01463 0.0610 0.1195 1825 12 9 0.0534 0.01259 0.0336 0.0847 admin.disease_code=ov time n.risk n.event survival std.err lower 95% CI upper 95% CI 0 576 0 1.000 0.0000 1.000 1.000 365 411 59 0.888 0.0139 0.861 0.915 730 314 55 0.761 0.0198 0.724 0.801 1095 210 59 0.602 0.0243 0.556 0.651 1460 133 49 0.451 0.0261 0.402 0.505 1825 78 39 0.310 0.0260 0.263 0.365
ggsurvplot(sfit, conf.int=TRUE, pval=TRUE)
從上面圖可以看出,不同數據集的生存曲線明顯存在差異。最好的乳腺癌,其次膠質母細胞瘤,最差的是卵巢癌。