美文网首页
TCGA数据库 | 临床数据不仅仅只有clinical.tsv

TCGA数据库 | 临床数据不仅仅只有clinical.tsv

作者: 生命数据科学 | 来源:发表于2023-01-27 13:44 被阅读0次

    其实经常分析TCGA数据库时会发现,clinical.tsv中基本没什么可用信息,大部分数据都是缺失的,那么,如何获取比较全面的临床数据,有哪些常用方法和数据库,一块来看看吧~

    官网地址: https://portal.gdc.cancer.gov/

    0. 对比两种结果的信息密度

    在正式分析之前,可以先整体感受一下二者的信息量差距

    因为数据比较多,因此我把表格缩小了来看,如clinical.tsv所示,中间比较空白的地方记录的都是“-”,即缺失值,clinical.tsv中虽然term比较多,但除了少部分预后信息之外,记录的临床信息非常的少,不利于后续进一步分析

    image

    再看看使用本期R脚本分析的结果,结果非常丰富,记录也十分详细,基本没有缺失值

    image

    1. 下载临床数据

    总共分为以下4步:

    1. Cases选择感兴趣的数据集
    2. File中选择clinical
    3. 加入购物车
    4. 下载购物车中的文件 image

    2. 提取临床信息

    文末提供整个Rproject文件夹

    1. 把上一步下载的压缩文件解压到./TCGA_clinical/file位置

      image
    2. 运行./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私信提供

    感谢观看,如果有用还请点赞,收藏,转发

    相关文章

      网友评论

          本文标题:TCGA数据库 | 临床数据不仅仅只有clinical.tsv

          本文链接:https://www.haomeiwen.com/subject/ewdehdtx.html