国产精品网红尤物福利在线观看_欧美经典一区二区_辽宁老熟女高潮狂叫视频_日日草日日干_成人免费观看毛片_久久激情免费视频

伯豪生物
TCGA and GEO 轉(zhuǎn)錄組數(shù)據(jù)挖掘超級干貨
發(fā)布時(shí)間:2020-09-29 瀏覽次數(shù):10131
伯豪生物鄧?yán)蠋熃o大家介紹一下對轉(zhuǎn)錄組TCGA & GEO的數(shù)據(jù)進(jìn)行分析,包括差異分析、富集分析、單基因展示以及其它個(gè)性化做圖。

信息時(shí)代就是好,沒有自己的數(shù)據(jù)咱可以從免費(fèi)的數(shù)據(jù)庫找數(shù)據(jù)呀!目前 TCGA 和 GEO 數(shù)據(jù)庫簡直就是專為科研人員準(zhǔn)備的免費(fèi)的寶庫。前面一直講的空間轉(zhuǎn)錄組,今天來穿插著講一節(jié) TCGA & GEO 數(shù)據(jù)分析換換口味吧。

今天主要給大家介紹一下對轉(zhuǎn)錄組 TCGA & GEO 的數(shù)據(jù)進(jìn)行分析,包括差異分析、富集分析、單基因展示以及其它個(gè)性化做圖。除了想利用公共數(shù)據(jù)庫挖掘轉(zhuǎn)錄組數(shù)據(jù)的發(fā)文章的同學(xué)之外,這篇教程其實(shí)特別適合自己做了少量轉(zhuǎn)錄組樣本又不想做后期驗(yàn)證,想直接用公共數(shù)據(jù)庫的數(shù)據(jù)來驗(yàn)證自己數(shù)據(jù)結(jié)果的朋友。

目前各種 TCGA & GEO  數(shù)據(jù)下載的教程太多了,所以今天直接省略這部分部分,直接從后面的分析開始。廢話不多說,直接上干貨!

一、準(zhǔn)備文件

基因表達(dá)矩陣文件,可以是 TCGA 下載的轉(zhuǎn)錄組數(shù)據(jù),也可以是 GEO 下載的轉(zhuǎn)錄組數(shù)據(jù),格式如下(行是基因,列是樣本):

1

樣本分組文件,格式如下(type 是分組):

2

二、差異分析

一般 TCGA 或 GEO 上大量樣本數(shù)據(jù)的差異分析 limma 用的比較多,所以這里也使用 limma 包來分析差異基因,注意需要先安裝 limma R 包。

安裝 limma 包:

if (!requireNamespace("BiocManager", quietly = TRUE))

    install.packages("BiocManager")

BiocManager::install("limma")

分析差異:

## 讀取基因表達(dá)件,取 log2

geneexp = read.table("gene_exp_BRCA.txt",header=T,row.names=1,sep="\t")

geneexp = log2(geneexp+1)

## 讀取分組文件

group_file = read.table("sample_group_BRCA.txt",header=T,row.names=1,sep="\t",as.is =TRUE)

rownames(group_file) = gsub('-','.',rownames(group_file))

geneexp = geneexp[,rownames(group_file)]

### 差異分組設(shè)置

samps<-factor(group_file$type)

design <- model.matrix(~0+samps) ;

colnames(design) <- levels(samps)

### 模型擬合

fit <- lmFit(geneexp, design)

cont.matrix<-makeContrasts(Basal-Normal,levels=design)

fit2 <- contrasts.fit(fit, cont.matrix)

fit2 <- eBayes(fit2)

final<-topTable(fit2, coef=1, number=dim(geneexp)[1], adjust.method="BH")

> head(final)

           logFC  AveExpr         t       P.Value     adj.P.Val        B

SDPR   -4.358861 2.679133 -46.10828 8.888505e-122 4.738017e-117 267.4862

TPX2    4.030685 3.807811  45.39822 2.571983e-120 6.854979e-116 264.1584

UBE2C   4.089727 3.270516  43.72542 8.428935e-117 1.497681e-112 256.1483

CDC20   3.971916 3.450304  42.85468 6.270780e-115 8.356598e-111 251.8811

FIGF   -3.220704 1.583802 -40.93757 1.053838e-110 1.123497e-106 242.2399

FAXDC2 -2.179867 1.637909 -39.05494 2.084335e-106 1.851758e-102 232.4283

三、繪制差異基因散點(diǎn)圖和火山圖

這一步需要用到 ggplot2 繪圖,沒有安裝的話需要先安裝 ggplot2 包。

# 繪制差異基因散點(diǎn)圖和火山圖

library(ggplot2)

g1 = "Normal"

g2 = "Basal"

g1_exp = geneexp[rownames(final),rownames(group_file)[which(group_file$type==g1)]]

g2_exp = geneexp[rownames(final),rownames(group_file)[which(group_file$type==g2)]]

g1_mean = apply(g1_exp,1,mean)

g2_mean = apply(g2_exp,1,mean)

type=rep('No',length(g1_mean))

type[which(final$logFC> 1 & final$adj.P.Val <0.05)] = "Up"

type[which(final$logFC < -1 & final$adj.P.Val < 0.05)] = "Down"

datam = data.frame(g1_mean,g2_mean,logFC=final$logFC,FDR=final$adj.P.Val,type,stringsAsFactors=FALSE)

## 散點(diǎn)圖

ggplot(datam,aes(g1_mean,g2_mean,colour=type))+

geom_point(stat="identity",size=1)+theme(legend.title=element_blank())+scale_color_manual(values =c("Down"='blue',"No"='grey',"Up"='orange'))+

    labs(x=paste(g1,'Log2(FPKM+1)'),y=paste(g2,'Log2(FPKM+1)'),title=paste(g2,'VS',g1,sep=""))+

    coord_cartesian(ylim=c(0,10),xlim=c(0,10))+geom_segment(aes(x = 0, y = 0, xend = 10, yend = 10),size=1,colour="#999999",linetype="dotted")+theme(plot.title = element_text(hjust = 0.5),title=element_text(face="bold",size=15,colour="black"),axis.title=element_text(face="bold",size=13,colour="black"),axis.text.x=element_text(face="bold",size=12,colour="black"),axis.text.y=element_text(face="bold",size=12,colour="black"),legend.text=element_text(face="bold",size=13,colour="black"))

散點(diǎn)圖結(jié)果如下:

3

## 繪制火山圖

ggplot(datam,aes(logFC,-log10(FDR),colour=type))+

            geom_point(stat="identity",size=1.2)+theme(legend.title=element_blank())+scale_color_manual(values =c("Down"='blue',"No"='grey',"Up"='orange'))+

            labs(x="Log2 (FC)",y="-Lg10 (FDR)",title=paste(g2,'VS',g1,sep=""))+coord_cartesian(xlim=c(-5,5))+

            geom_hline(aes(yintercept=1.3),colour="white",size=1.1)+

            geom_vline(aes(xintercept =-1),colour="white",size=1.1)+geom_vline(aes(xintercept =1),colour="white",size=1.1)+

            theme(axis.title.y = element_text(vjust=-0.1),axis.title.x = element_text(vjust=-0.6),title = element_text(vjust=0.8))+theme(plot.title = element_text(hjust = 0.5),title=element_text(face="bold",size=15,colour="black"),axis.title=element_text(face="bold",size=13,colour="black"),axis.text.x=element_text(face="bold",size=10,colour="black"),axis.text.y=element_text(face="bold",size=10,colour="black"),legend.text=element_text(face="bold",size=12,colour="black"))

火山圖結(jié)果如下:  

4     

四、差異基因富集分析

這里我們介紹一下怎么用  clusterProfiler R 包來做差異基因富集分析。需要先安裝好 clusterProfiler,org.Hs.eg.db 兩個(gè) R 包。

if (!requireNamespace("BiocManager", quietly = TRUE))

    install.packages("BiocManager")

BiocManager::install("clusterProfiler")

BiocManager::install("org.Hs.eg.db")

GO 富集分析

library(clusterProfiler)

library(org.Hs.eg.db)

### 提取差異基因 list

diffgenes <- final[(final[,"adj.P.Val"]<0.05 & abs(final[,"logFC"])>=1),]

genelist <- diffgenes[,"logFC"]

names(genelist) = rownames(diffgenes)

##id 轉(zhuǎn)換,將 SYMBOL 轉(zhuǎn)換成 ENTREZID

gene = bitr(rownames(diffgenes), fromType = "SYMBOL", toType = "ENTREZID", OrgDb = "org.Hs.eg.db")

#####################GO 富集

ego <- enrichGO(

    gene  = gene$ENTREZID,

    keyType = "ENTREZID", 

    OrgDb   = "org.Hs.eg.db",

    ont     = "ALL",

    pAdjustMethod = "BH",

    pvalueCutoff  = 0.05,

    qvalueCutoff  = 0.05,

    readable      = TRUE)

# 再用 setReadable 函數(shù)將基因 ID 映射到基因 Symbol

ego2 <- setReadable(ego, OrgDb = "org.Hs.eg.db", 'ENTREZID')

繪制柱狀圖:

barplot(ego2,showCategory = 20)

5

繪制氣泡圖:

dotplot(ego2, showCategory = 20)

6

繪制網(wǎng)絡(luò)圖 1:

cnetplot(ego2, showCategory = 3,foldChange=genelist, circular = TRUE, colorEdge = TRUE)

7

繪制網(wǎng)絡(luò)圖 2:

emapplot(ego2, foldChange=genelist, showCategory = 20)

8

KEGG 富集分析

注意這一步需要連接網(wǎng)絡(luò),因?yàn)?clusterProfiler 是在線抓取新的 pathway 數(shù)據(jù)庫的。當(dāng)然也有用 kegg.db R 包直接內(nèi)置數(shù)據(jù)庫的情況,這里不做介紹。

######################KEGG 富集

kegg <- enrichKEGG(

    gene = gene$ENTREZID,

    keyType   = "kegg",

    organism  = 'hsa',

    pvalueCutoff  = 1,

    pAdjustMethod  = "BH",

    qvalueCutoff  = 1,

    use_internal_data = FALSE)

kegg2 <- setReadable(kegg, OrgDb = "org.Hs.eg.db", 'ENTREZID')

繪制柱狀圖:

barplot(kegg2,showCategory = 20)

9

繪制氣泡圖:

dotplot(kegg2, showCategory = 20)

10

繪制網(wǎng)絡(luò)圖 1:

cnetplot(kegg2, showCategory = 10,foldChange=genelist, circular = TRUE, colorEdge = TRUE)

11

繪制網(wǎng)絡(luò)圖 2:

emapplot(kegg2, foldChange=genelist, showCategory = 20)

12


五、差異基因熱圖標(biāo)記基因

當(dāng)我們已經(jīng)用自己的數(shù)據(jù)做過分析得到了差異基因,或者是已經(jīng)有自己關(guān)注的基因,想用  TCGA & GEO 數(shù)據(jù)來驗(yàn)證自己的數(shù)據(jù)或結(jié)論的時(shí)候,用 TCGA & GEO 數(shù)據(jù)差異基因熱圖同時(shí)標(biāo)記特定基因來展示結(jié)果就特別合適。

###### 差異基因熱圖標(biāo)記關(guān)注基因

library("ComplexHeatmap")

library("circlize")

diff_exp = geneexp[rownames(diffgenes),]

# 進(jìn)行 zscore 歸一化

diff_exp_scaled = t(apply(diff_exp, 1, scale)) 

colnames(diff_exp_scaled) = colnames(diff_exp)

# 需要標(biāo)記的基因

genes = c('CDC20','THRB','FAM13A','CCNA2','PRR15','CHI3L1','CLCA2','ABCA10','A2ML1','LCN2')

## 設(shè)置位置

gene_pos = which(rownames(diff_exp) %in% genes)

ha = rowAnnotation(foo = anno_mark(at = gene_pos, labels = genes))

m=round(max(abs(diff_exp_scaled)))

## 畫熱圖

Heatmap(diff_exp_scaled, colorRamp2(c(-m,0,m),c("blue", "#EEEEEE", "red")),

right_annotation = ha,name = "Z-score",show_row_names =FALSE,show_column_names =FALSE)

繪圖結(jié)果如下:

13

六、單個(gè)基因繪圖

要在 TCGA & GEO 數(shù)據(jù)中驗(yàn)證自己的關(guān)注的基因的差異情況,除了前面說的差異基因熱圖標(biāo)記特定基因之外,也可以對單個(gè)基因直接進(jìn)行繪圖。這里我們提供三種展示方式,選擇自己喜歡的一種展示形式就行。

用箱線圖展示:

## 單個(gè)基因箱線圖

exp2 = data.frame(t(diff_exp))

exp2$type = group_file$type

ggplot(exp2, aes(x=type, y=CDC20,fill=type)) + 

    geom_boxplot()+geom_jitter(alpha = .3, width =0.2,size=1)+labs(title = "") + ylab("log2 (FPKM)")+ xlab("")+theme_bw()+

  theme(title=element_text(face="bold",size=16),axis.title=element_text(face="bold",size=15),axis.text.x=element_text(face="bold",angle=80,size=13,hjust=1),

  axis.text.y=element_text(face="bold",size=12),legend.text=element_text(face="bold",size=13),legend.title=element_text(face="bold",size=13))

結(jié)果如下:

   14

小提琴圖展示:

### 單個(gè)基因小提琴圖

ggplot(exp2, aes(x=type, y=CDC20,fill=type)) + 

    geom_violin(alpha=0.5) + geom_boxplot(alpha = .5,fill="white", width= .2)+labs(title = "") + ylab("log2 (FPKM)")+ xlab("")+theme_bw()+

  theme(title=element_text(face="bold",size=16),axis.title=element_text(face="bold",size=15),axis.text.x=element_text(face="bold",angle=80,size=13,hjust=1),

  axis.text.y=element_text(face="bold",size=12),legend.text=element_text(face="bold",size=13),legend.title=element_text(face="bold",size=13))

結(jié)果如下:

15

散點(diǎn)圖展示:

### 單個(gè)基因散點(diǎn)圖   

ggplot(exp2, aes(x=type, y=CDC20)) +

  geom_dotplot(binaxis='y', stackdir='center',binwidth = 0.1)+stat_summary(fun.y=median, geom="point", shape=18,size=3, color="red")+

  theme(axis.title=element_text(face="bold",size=15),axis.text.x=element_text(face="bold",angle=80,size=13,hjust=1),axis.text.y=element_text(face="bold",size=12))

結(jié)果如下:

16

這里只展示一個(gè)基因的情況,如果是有多個(gè)基因需要繪圖的,把代碼里的基因名替換一下就好了。

好啦,今天的分享就到次為止啦,下次再繼續(xù)哦!

更多伯豪生物人工服務(wù):

伯豪學(xué)院單細(xì)胞測序服務(wù)人工客服


在線客服
登錄/注冊
在線留言
返回頂部
主站蜘蛛池模板: 97久久精品国产_大又大又粗又硬又爽少妇毛片_国产精品午夜在线观看_无码AV综合AV亚洲AV_97视频资源_91免费视频软件 | 亚洲综合在线一区二区_在线观看视频一区_狼人综合狼人综合网站_国产在线播放91_免费观看一级毛片视频_日日AV色欲香天天综合网 | 国产精品美女视频网站_中文字幕一区二区三区波多野结衣_手机在线观看国产_你操综合_色婷婷精品久久二区二区蜜臀av_女人黄色特级大片 | 欧美黄色录相_局内人在线_国产无遮挡又黄又爽免费网站_国一区二区在线观看_日韩激情毛片_视频一区二区三区中文字幕 | caoporn视频_特级毛片a级毛片100免费播放_www.色53色.com_色婷婷久久久久久_在线观看免费的av_久草女人 | 国产精品一级_大地资源在线观看中文第二页_亚洲人成网站在线播放vr_纯肉浪货高H调教SM_无码精品国产VA在线观看_男女啪啪高清无遮挡免费 | 欧洲精品在线视频_国产亚洲精品成人a_亚洲熟女一区二区三区_久草青娱乐_116少妇做爰毛片_日日干日日操 | 日本丰满熟妇videossex一_亚洲国产精品91_99re亚洲无码高清_国产午夜无码精品免费看动漫_91草逼视频_成人国内精品久久久久一区 | 久久韩国免费视频_一千部毛片免费观看在线观看_亚洲最大AV资源站无码AV网址_日韩欧美视频一区_亚洲最大激情中文字幕_天堂网www在线资源 | 日本人妻巨大乳挤奶水免费_成人av片免费看_久久99久久99精品免观看粉嫩_中文日产幕无线码系列四虎_污18禁污色黄网站免费_奇米影视二区 | 日日摸夜夜添夜夜添高潮视频_www.17c.com91嫩草_国产精品人妻无码久久久郑州_久热中文_亚洲av激情毛片九色一区_日本无码欧美激情视频二区 | 日韩视频播放_国产在线黄色片_日本无遮挡吸乳叫声视频_国产成人在线观看网址_日本男女拍拍拍_1区2区3区在线视频 | 波多野结喷水最猛一部352_片在线免费观看_欧美韩一区二区_国产乱子伦一区二区三区视频播放_免费视频精品_日韩在线观看av | 白石茉莉奈在线一区二区三区_精品专区_草草影院2022成人免费视频_性夜久久一区国产9人妻_久久久久久中文字幕有精品_成人黄色视频播放1 | 又爽又猛又粗国产免费_夜夜躁狠狠躁_欧美三极_无码成人片在线播放_高清一区二区三区视频_欧美久久久久久久久久伊人 | 亚洲国产成人资源在线软件_草女人视频_亚洲一区AV无码专区在线观看_三级在线观看_色偷偷国色天香在线观看免费视频_久久国语视频对白 | 国产精品一区二区三区四区_国产色在线_99热首页_18禁黄网站禁片免费观看在线_亚洲aav_久久久久久久有限公司 | 优优人体大尺大尺无毒不卡_一级片视频网站_97色伦97色伦国产欧美_九九九视频在线_国产一区免费视频_www.xxx麻豆 | 一二三四免费观看在线视频中文版_大学生高潮无套内谢视频_亚洲午夜精品久久久久久久久_小14萝裸体洗澡视频免费网站_夜夜夜高潮夜夜爽夜夜爰爰_2024最新黄色网址 | 免费观看日本视频_中文字幕日本国产_国产日本欧美一区二区三区_911亚洲精品777777_国产色女_欧美一本在线 | 有码一区_亚洲欧美日韩中文v在线_91麻豆国产福利在线观看_免费放黄网站在线播放_国产成人午夜福利在线观看_人妻激情另类国产 | 一二三区在线观看_亚洲乱码中文字幕手机在线_亚洲欧洲日本无在线码_日韩一区二区三区四区_无码专区久久综合久中文字幕_久久夜色撩人精品国产小说 | 色婷婷狠狠爱_日韩在线aⅴ免费视频_成年美女黄网站色视频免费_欧美日韩视频观看_色偷偷亚洲女人的天堂_极品大长腿啪啪高潮露脸 | 少妇无码av无码专区在线观看_很嫩很紧直喷白浆在线_亚洲日本va中文字幕久久_国产精品内射视频免费_日日摸日日碰夜夜爽无_欧美三日本三级少妇三2023 日韩女同互慰一区二区_八戒午夜福利啪啪影视_天天搞av_在线中文字幕一区二区精品区_亚洲一区成人在线_69热视频 | 欧美精品XXXX_久艹在线免费观看_夜夜夜夜夜操_韩日成人_在线播放h_成人区视频 | 99精品视频在线观看免费_少妇无码太爽了在线播放_XXX欧美性兽交_99久久国产精_白嫩少妇激情无码_乱人伦中文字幕成人网站在线 | 古典武侠第一页久久777_91美女片黄在线观看_亚洲日产精品一二三四区_人妻少妇无码精品视频区_亚洲天堂国产视频_欧美日韩一区视频 | 久草在线99_欧美一线高本道高清免费_凹凸av导航大全精品_婷婷视频一区二区三区_日本精品va在线观看_麻豆超碰 | www五月天com_久久毛片免费无人区蜜臀av_鸥美一级毛片_sese亚洲_蜜臀视频网站_国产精品.www | 深夜福利在线观看视频_高清国语自产拍免费视频_九色成人自拍_18欧美乱大交_91精品免费久久久久久久久_欧日韩国产无码专区 | 91成人免费看_我要看国产一级片_日本av免费观看_国产91色在线免费_97久久精品亚洲中文字幕无码_视频福利网 | 日产精品高潮一区二区三区5月_xx色综合_无遮挡在线_久久国产精品毛片_把腿张开老子cao哭你动态图_天天爱夜夜 | 日本人妻A片成人免费看_天堂在线www官网_欧美日韩国产在线一区_一区二区视频传媒有限公司_国产91色欲麻豆精品一区二区_成人高潮片免费视 | 国产欧美一区二区三区在线播放_青青草成人免费在线视频_久久午夜夜伦鲁鲁片无码免费_国产白嫩护士被弄高潮_91在线精品视频_小箩莉末发育娇小性色XXXX | 亚洲国产精品VA在线观看黑人_亚洲国产欧美在线人成aaaa20_国产精品久久久久一区二区_国产无套码AⅤ在线观看在线播放_中文字幕久久久人伦_人妻少妇AV无码一区二区 | 337p日本欧洲亚洲大胆色噜噜噜_99999精品视频_美女隐私视频黄www曰本_夜夜躁狠狠躁日日躁av麻豆_一级v片_欧美日韩免费中文字幕 | 毛片人妻_国产午夜精品久久久久_freerideoxxx性欧美_久久免费国产精品1_亚洲视频免费观看_国产精品毛片久久久久久久 | 精品国产一区二区三区蜜殿_中文在线а天堂中文在线新版_中文字幕一区二区免费_漂亮人妻被中出中文字幕久久_性xxxxx欧美极品少妇_久久久久69 | 又黄又爽又猛1000部A片_青春草免费在线视频_欧美成人精品高清在线播放_av黑人_午夜视频久久_91一区二区三区在线 | 精品成人A人无码亚洲成A无码_无码精品人妻一区二区三区影院_欧美老熟妇又粗又大_91视频三级_av在线播放一区二区_欧美精品一区在线播放 | 日韩一区二区视频_久久只精品_亚洲一区国产一区_日日人人_午夜久久_亚洲91在线视频 |