TCGA数据下载系列之二:RTCGA

library(RTCGA)

library(RTCGA.clinical)

library(RTCGA.rnaseq)

library(RTCGA.mRNA)

library(RTCGA.mutations)

all_TCGA_cancers=infoTCGA()

DT::datatable(all_TCGA_cancers)


#指定任意基因从任意癌症里面获取芯片表达数据(这里是MRNA)

expr<-expressionsTCGA(BRCA.mRNA,OV.mRNA,LUSC.mRNA,extract.cols = c("GATA3","PTEN","XBP1","ESR1","MUC1"))


#简化表达模式

expr$dataset<-gsub(".mRNA","",expr$dataset)#替换,dataset这一列,将.mRNA去掉


expr$bcr_patient_barcode<-paste0(expr$dataset,c(1:150,1:561,1:154))#barcode换掉


#绘制指定基因在不同癌症的表达量区别boxplot

library(ggpubr)

ggboxplot(expr,x="dataset",y="GATA3",title = "GATA3",ylab = "Expression",color = "dataset",palette = "jco")###expr中dataset作为横坐标,GATA3表达量作为纵坐标,颜色根据dataset分组,具体颜色为jco系列


这里选择的是 ggsci 包的配色方案,包括: “npg”, “aaas”, “lancet”, “jco”, “ucscgb”, “uchicago”, “simpsons” and “rickandmorty”,针对常见的SCI杂志的需求开发的。

#还可以加上不同癌症之间比较的p值

my_comparisons<-list(c("BRCA","OV"),c("OV","LUSC"))

ggboxplot(expr,x="dataset",y="GATA3",title = "GATA3",ylab = "Expression",color = "dataset",palette = "jco")+stat_compare_means(comparisons = my_comparisons)


#用ggplot2也可以画箱型图

library(ggplot2)

p<-ggplot(expr,aes(x=expr$dataset,y=expr$GATA3))

p<-p+geom_boxplot(aes(fill=expr$dataset))

p+xlab("1")+ylab("2")+ggtitle("3")+guides(fill=guide_legend(title="4"))


###另附小技巧

label.select.criteria <- list(criteria = "`y` > 3.9 & `x` %in% c('BRCA', 'OV')")

ggboxplot(expr, x = "dataset",

         y = c("GATA3", "PTEN", "XBP1"),

         combine = TRUE,

         color = "dataset", palette = "jco",

         ylab = "Expression",

         label = "bcr_patient_barcode",              # column containing point labels

         label.select = label.select.criteria,       # Select some labels to display

         font.label = list(size = 9, face = "italic"), # label font

         repel = TRUE                                # Avoid label text overplotting

         )


##一般用到是几个同时呈现

ggboxplot(expr,x="dataset",y=c("GATA3","PTEN","XBP1"),ylab = "Expression",color = "dataset",palette = "jco",combine = TRUE)


#指定任意基因从任意癌症里面获取测序表达数据(rnaseq)

expr <- expressionsTCGA(BRCA.rnaseq, OV.rnaseq, LUSC.rnaseq,extract.cols = c("GATA3|2625", "PTEN|5728", "XBP1|7494","ESR1|2099", "MUC1|4582"))#需要symbol还要entrez的ID:symbol|extrezID

ggboxplot(expr,x="dataset",y="`GATA3|2625`",title = "GATA3|2625",ylab = "Expression",color = "dataset",palette = "jco")



#用全部的rnaseq的表达数据来做主成分分析

library(RTCGA.rnaseq)

library(dplyr)#   R包dplyr可用于处理R内部或者外部的结构化数据,相较于plyr包,dplyr专注接受dataframe对象, 大幅提高了速度,并且提供了更稳健的数据库接口。同时,dplyr包可用于操作Spark的dataframe。本文只是基础的dplyr包学习笔记,所以并不会讨论一些高级应用,或者与data.table包的性能比较。

expressionsTCGA(BRCA.rnaseq,OV.rnaseq,LUSC.rnaseq)%>%dplyr::rename(cohort=dataset)%>%filter(substr(bcr_patient_barcode,14,15)=="01")->BRCA.OV.LUSC.rnaseq.cancer#筛选出了“TCGA-GM-A2DA-01A-11R-A18M-07”bcr_barcode都是“01”的,%>%管道符,左边赋于右边

pcaTCGA(BRCA.OV.LUSC.rnaseq.cancer, "cohort") -> pca_plot

plot(pca_plot)


#用突变数据做生存分析

library(RTCGA.mutations)

library(survminer)

library(dplyr)

mutationsTCGA(BRCA.mutations,OV.mutations,LUSC.mutations)%>%filter(Hugo_Symbol=="TP53")%>%filter(substr(bcr_patient_barcode,14,15)=="01")%>%mutate(bcr_patient_barcode=substr(bcr_patient_barcode,1,12))->BRCA_OV.mutations###斜体部分筛选了“01”样本中含TP53的,删除线部分是将第一列barcode重命名了,只取前12个字符


survivalTCGA(BRCA.clinical,OV.clinical,extract.cols = "admin.disease_code")%>%dplyr::rename(disease=admin.disease_code)->BRCA_OV.clinical

BRCA_OV.clinical %>%  left_join(    BRCA_OV.mutations,  by = "bcr_patient_barcode" ) %>%mutate(TP53 =  ifelse(!is.na(Variant_Classification), "Mut","WILDorNOINFO")) -> BRCA_OV.clinical_mutations#斜体是说按照barcode将clinical和mutations合并,删除线是说增加一列TP53 的信息,如果variant_classification是空值,则表示wildornoinfo,如果不是空值,则表示其mut


BRCA_OV.clinical_mutations %>%

select(times, patient.vital_status, disease, TP53) -> BRCA_OV.2plot#选取生存分析需要的内容

kmTCGA(

   BRCA_OV.2plot,

   explanatory.names = c("TP53", "disease"),

   break.time.by = 400,

   xlim = c(0,2000),

    pval = TRUE) -> km_plot

print(km_plot)



©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,590评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 86,808评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,151评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,779评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,773评论 5 367
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,656评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,022评论 3 398
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,678评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 41,038评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,659评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,756评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,411评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,005评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,973评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,203评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,053评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,495评论 2 343

推荐阅读更多精彩内容