• 主页
  • 课程

    关于课程

    • 课程归档
    • 成为一名讲师
    • 讲师信息
    同等学历教学

    同等学历教学

    免费
    阅读更多
  • 特色
    • 展示
    • 关于我们
    • 问答
  • 事件
  • 个性化
  • 博客
  • 联系
  • 站点资源
    有任何问题吗?
    (00) 123 456 789
    weinfoadmin@weinformatics.cn
    注册登录
    恒诺新知
    • 主页
    • 课程

      关于课程

      • 课程归档
      • 成为一名讲师
      • 讲师信息
      同等学历教学

      同等学历教学

      免费
      阅读更多
    • 特色
      • 展示
      • 关于我们
      • 问答
    • 事件
    • 个性化
    • 博客
    • 联系
    • 站点资源

      未分类

      • 首页
      • 博客
      • 未分类
      • R语言-使用RTCGAToolbox包对获取TCGA数据数据分析与可视化(2)

      R语言-使用RTCGAToolbox包对获取TCGA数据数据分析与可视化(2)

      • 发布者 Sam 蔡
      • 分类 未分类
      • 日期 2019年10月30日
      • 评论 0评论

      R语言-使用RTCGAToolbox包对获取TCGA数据数据分析与可视化(2)
      继续关注RTCGA包:数据处理及可视化功能,主要是两个分析:

      (1)生存分析

      survivalTCGA()从RTCGA.clinical中获取临床数据,kmTCGA()生成K-M生存曲线;

      (2)表达分析

      expressionsTCGA()从RTCGA.rnaseq、RTCGA.mirna等共5个包中获取表达数据,pcaTCGA()、heatmapTCGA()、boxplotTCGA()可视化。

      生存分析

      RTCGA.clinical包中分癌症类型,有38个数据表,如BRCA.clinical, OV.clinical等等,癌症的编号详见http://gdac.broadinstitute.org/。每个数据表包括”admin.bcr”、”admin.day_of_dcc_upload”、”admin.disease_code” 等共计3703列。如下所示:

      library("RTCGA.clinical")
      library("tidyverse")
      BRCA.clinical%>%colnames()%>%head
      # "admin.bcr"    "admin.day_of_dcc_upload"   "admin.disease_code"                
      # "admin.file_uuid"    "admin.month_of_dcc_upload" "admin.patient_withdrawal.withdrawn"
      BRCA.clinical%>%ncol()
      #3703
      

      survivalTCGA()可以从RTCGA.clinical中获取临床数据,如果不注明extract.cols参数,那么结果只有三列:times 、bcr_patient_barcode、patient.vital_status,分别是生存时间、barcode及病人生存状态。

      kmTCGA()用于绘制生存曲线,参数explanatory.names代表分组:

      # 获取生存数据,不同的疾病
      survivalTCGA(BRCA.clinical, OV.clinical, extract.cols = "admin.disease_code") -> BRCAOV.survInfo
      # 绘图
      kmTCGA(BRCAOV.survInfo, explanatory.names = "admin.disease_code", pval = TRUE)
      #kmTCGA(BRCAOV.survInfo, explanatory.names = "admin.disease_code", main = "",
             xlim = c(0,4000))
      

      img

      # 获取生存数据,不同的治疗方式
      survivalTCGA(BRCA.clinical,
                   extract.cols = c("patient.drugs.drug.therapy_types.therapy_type")) %>%
        filter(patient.drugs.drug.therapy_types.therapy_type %in%
                 c("chemotherapy", "hormone therapy")) %>%
        rename(therapy = patient.drugs.drug.therapy_types.therapy_type) -> BRCA.survInfo.chemo
      # 绘图
      kmTCGA(BRCA.survInfo.chemo, explanatory.names = "therapy", xlim = c(0, 3000), conf.int = FALSE)
      

      img

      表达分析

      以RTCGA.rnaseq包为例,expressionsTCGA ()用于获取表达数据,这部分在上一篇RTCGA中已经说过。

      expressionsTCGA()如指定参数extract.cols,则返回特定基因在各个样本的表达量,如不指定则返回全部基因,其值的形式为“Gene symbol|Gene ID”,如 “VENTX|27287″。

      1. PCA
      library(RTCGA.rnaseq)
      # 获取全部基因的表达情况
      expressionsTCGA(BRCA.rnaseq, OV.rnaseq, HNSC.rnaseq) %>%
        rename(cohort = dataset) %>%
        filter(substr(bcr_patient_barcode, 14, 15) == "01") -> BRCA.OV.HNSC.rnaseq.cancer
      
      BRCA.OV.HNSC.rnaseq.cancer %>%ncol()
          # 20533
      # 由于基因数太多了,随机选1000个基因绘图
      BRCA.OV.HNSC.rnaseq.cancer%>%select(sample(colnames(.),1000),-bcr_patient_barcode,cohort) %>%
        pcaTCGA("cohort")->pca.rnaseq
      plot(pca.rnaseq)
      

      img

      1. 热图

      hearmap用于绘制热图,主要有四个参数,第一个为包含所需变量的数据库,第二个和第三个分别是热图的X、Y轴分组,第四个变量为展示的变量。

      # 获取MET、ZNF500、ZNF501三个基因在ACC、BLCA、BRCA、OV癌症中的表达
      expressionsTCGA(ACC.rnaseq, BLCA.rnaseq, BRCA.rnaseq, OV.rnaseq,
                      extract.cols = c("MET|4233", "ZNF500|26048", "ZNF501|115560")) %>%
        rename(cohort = dataset, MET = `MET|4233`) %>%  #cancer samples
        filter(substr(bcr_patient_barcode, 14, 15) == "01") %>%
        mutate(MET = cut(MET,
                         round(quantile(MET, probs = seq(0,1,0.25)), -2),
                         include.lowest = TRUE,
                         dig.lab = 5)) -> ACC_BLCA_BRCA_OV.rnaseq
      # 以癌症为第一分组、MET基因表达量为第二分组,计算各分组ZNF500、ZNF501的基因表达中位数
      ACC_BLCA_BRCA_OV.rnaseq %>%
        select(-bcr_patient_barcode) %>%
        group_by(cohort, MET) %>%
        summarise_all(median) %>%
        mutate(ZNF500 = round(`ZNF500|26048`),
               ZNF501 = round(`ZNF501|115560`)) -> ACC_BLCA_BRCA_OV.rnaseq.medians
      # 绘制ZNF501热图
      heatmapTCGA(ACC_BLCA_BRCA_OV.rnaseq.medians,
                  "cohort", "MET", "ZNF501", title = "Heatmap of ZNF501 expression")
      

      img

      1. 箱线图

      boxplotTCGA用于绘制箱线图,主要的参数有data、x、y、fill,分别是数据库、x轴、y轴,染色填充,两个有意思的参数coord.flip坐标轴翻转(默认翻转), facet.names分组(facet)变量,xlab和ylab用于定义坐标轴标题,legend.title定义图例,legend定义图例的位置。

      # 获取RNAseq表达量数据
      expressionsTCGA(ACC.rnaseq, BLCA.rnaseq, BRCA.rnaseq, OV.rnaseq,
                      extract.cols = "MET|4233") %>%
        rename(cohort = dataset,
               MET = `MET|4233`) %>%
        #cancer samples
        filter(substr(bcr_patient_barcode, 14, 15) == "01") -> ACC_BLCA_BRCA_OV.rnaseq
      
      boxplotTCGA(ACC_BLCA_BRCA_OV.rnaseq, "cohort", "MET") 
      boxplotTCGA(ACC_BLCA_BRCA_OV.rnaseq, "cohort", "log1p(MET)") # 数据变换,可以压缩异常值的离群趋势
      boxplotTCGA(ACC_BLCA_BRCA_OV.rnaseq, "reorder(cohort,log1p(MET), median)", "log1p(MET)") # 调整x的顺序
      boxplotTCGA(ACC_BLCA_BRCA_OV.rnaseq,"cohort", "log1p(MET)",facet.names = "cohort")
      

      img

      本周的分享就到这里。

      请关注“恒诺新知”微信公众号,感谢“R语言“,”数据那些事儿“,”老俊俊的生信笔记“,”冷🈚️思“,“珞珈R”,“生信星球”的支持!

      • 分享:
      Sam 蔡
      Sam 蔡

      上一篇文章

      交响乐2-单细胞RNAseq从实验到下游简介
      2019年10月30日

      下一篇文章

      重温那些好用的R小知识~未完待续
      2019年10月31日

      你可能也喜欢

      2-1675088548
      lncRNA和miRNA生信分析系列讲座免费视频课和课件资源包,干货满满
      30 1月, 2023
      9-1675131201
      如何快速批量修改 Git 提交记录中的用户信息
      26 1月, 2023
      8-1678501786
      肿瘤细胞通过改变CD8+ T细胞中的丙酮酸利用和琥珀酸信号来调控抗肿瘤免疫应答。
      7 12月, 2022

      留言 取消回复

      要发表评论,您必须先登录。

      搜索

      分类

      • R语言
      • TCGA数据挖掘
      • 单细胞RNA-seq测序
      • 在线会议直播预告与回放
      • 数据分析那些事儿分类
      • 未分类
      • 生信星球
      • 老俊俊的生信笔记

      投稿培训

      免费

      alphafold2培训

      免费

      群晖配置培训

      免费

      最新博文

      Nature | 单细胞技术揭示衰老细胞与肌肉再生
      301月2023
      lncRNA和miRNA生信分析系列讲座免费视频课和课件资源包,干货满满
      301月2023
      如何快速批量修改 Git 提交记录中的用户信息
      261月2023
      logo-eduma-the-best-lms-wordpress-theme

      (00) 123 456 789

      weinfoadmin@weinformatics.cn

      恒诺新知

      • 关于我们
      • 博客
      • 联系
      • 成为一名讲师

      链接

      • 课程
      • 事件
      • 展示
      • 问答

      支持

      • 文档
      • 论坛
      • 语言包
      • 发行状态

      推荐

      • iHub汉语代码托管
      • iLAB耗材管理
      • WooCommerce
      • 丁香园论坛

      weinformatics 即 恒诺新知。ICP备案号:粤ICP备19129767号

      • 关于我们
      • 博客
      • 联系
      • 成为一名讲师

      要成为一名讲师吗?

      加入数以千计的演讲者获得100%课时费!

      现在开始

      用你的站点账户登录

      忘记密码?

      还不是会员? 现在注册

      注册新帐户

      已经拥有注册账户? 现在登录

      close
      会员购买 你还没有登录,请先登录
      • ¥99 VIP-1个月
      • ¥199 VIP-半年
      • ¥299 VIP-1年
      在线支付 激活码

      立即支付
      支付宝
      微信支付
      请使用 支付宝 或 微信 扫码支付
      登录
      注册|忘记密码?