其實經(jīng)常分析TCGA數(shù)據(jù)庫時會發(fā)現(xiàn)至会,
clinical.tsv
中基本沒什么可用信息叛薯,大部分數(shù)據(jù)都是缺失的,那么依啰,如何獲取比較全面的臨床數(shù)據(jù)乎串,有哪些常用方法和數(shù)據(jù)庫店枣,一塊來看看吧~
官網(wǎng)地址: https://portal.gdc.cancer.gov/
0. 對比兩種結果的信息密度
在正式分析之前速警,可以先整體感受一下二者的信息量差距
因為數(shù)據(jù)比較多,因此我把表格縮小了來看鸯两,如clinical.tsv
所示闷旧,中間比較空白的地方記錄的都是“-”,即缺失值钧唐,clinical.tsv
中雖然term
比較多忙灼,但除了少部分預后信息之外,記錄的臨床信息非常的少钝侠,不利于后續(xù)進一步分析
再看看使用本期R腳本分析的結果该园,結果非常豐富,記錄也十分詳細帅韧,基本沒有缺失值
1. 下載臨床數(shù)據(jù)
總共分為以下4步:
-
Cases
選擇感興趣的數(shù)據(jù)集 -
File
中選擇clinical
- 加入購物車
-
下載購物車中的文件
2. 提取臨床信息
文末提供整個
Rproject
文件夾
-
把上一步下載的壓縮文件解壓到
./TCGA_clinical/file
位置 運行
./TCGA_clinical
中的code.R
里初,什么都不需要修改! 輸出的TCGA_cli.xls
即為結果
library(XML)
library(dplyr)
file_char<-list.files(pattern = ".xml",full.names = T,recursive = T)
tem <- xmlParse(file_char[i])%>%xmlToDataFrame()
output_df <- matrix(nrow = length(file_char),
ncol = ncol(tem),
dimnames = list(NULL,
colnames(tem)))
rm(tem)
for (i in 1:length(file_char)) {
cli_data <- xmlParse(file_char[i])
cli_frame <- xmlToDataFrame(cli_data)
cli_frame[1,c(!is.na(cli_frame[2,]))]<-cli_frame[2,c(!is.na(cli_frame[2,]))]
output_df[i,]<-as.character(cli_frame[1,])
}
write.table(output_df,file = "TCGA_cli.xls",sep = "\t",row.names = F,col.names = T)
整個Rproject私信提供
感謝觀看忽舟,如果有用還請點贊双妨,收藏,轉發(fā)叮阅!