library(clusterProfiler)
library(org.Dm.eg.db)
library(dplyr)
library(ggplot2)
library(VennDiagram)
plotTheme = theme(
axis.title = element_text(family = "Arial", face = "bold", size = 16),
legend.title = element_text(family = "Arial", face = "bold", size = 16),
text = element_text(family = "Arial",size = 14))
载入需要的程辑包:grid
载入需要的程辑包:futile.logger
anaGO = function(geneids,prefix){
res = enrichGO(geneids,OrgDb = 'org.Dm.eg.db',keyType = 'ENTREZID',ont = 'ALL',readable = TRUE,maxGSSize = 300)
if(!is.null(res)){
write.csv(res@result,file = paste0(prefix,'_GO.csv'))
resTable = res@result[order(res@result$p.adjust),]
resTable = resTable %>% group_by(ONTOLOGY) %>% top_n(-p.adjust,n = 10)
p = ggplot(data = resTable,
aes(
x = reorder(Description,-p.adjust),
y = -log10(p.adjust),
fill = ONTOLOGY,
label = reorder(Count,-p.adjust)
)
)+
geom_bar(stat = 'identity')+
geom_text(stat = 'identity',hjust = 1.2)+
coord_flip()+
facet_grid(ONTOLOGY~.,scales = 'free',space = 'free')+
labs(x = '',fill = '')+
theme_classic()+
scale_fill_manual(
breaks = c('BP','CC','MF'),
labels = c('BP','CC','MF'),
values = c('#ffc64b','#66CC33','#33ccff')
)+
theme(strip.text = element_blank(),
axis.line.y = element_blank(),
axis.ticks.y = element_blank(),
axis.title.x = element_text(size = 14),
text = element_text(size = 12),
axis.text = element_text(size = 12))+plotTheme
ggsave(filename = paste0(prefix,'_GO.png'),plot = p,dpi = 300,width = 10,height = 8,bg = 'white')
p
}else{
print(paste0('No GO terms enriched in ',prefix,'!!!!'))
}
}
pa14DEG = read.csv('pa14_DEG.csv',header = TRUE,row.names = 1)
pa14DEG
| names | pvals_adj | logfoldchanges | status | |
|---|---|---|---|---|
| <chr> | <dbl> | <dbl> | <chr> | |
| 0 | His3.3B | 0 | 2.4733067 | up |
| 1 | RpS18 | 0 | 0.4799658 | up |
| 2 | l(2)gl | 0 | 1.9522247 | up |
| 3 | RpL9 | 0 | 0.3843325 | up |
| 4 | UbcE2H | 0 | 3.0332344 | up |
| 5 | larp | 0 | 2.2568846 | up |
| 6 | Imp | 0 | 1.3166707 | up |
| 7 | Cdc42 | 0 | 2.4474810 | up |
| 8 | rhea | 0 | 1.8622605 | up |
| 9 | kibra | 0 | 2.0063440 | up |
| 10 | msn | 0 | 1.9221345 | up |
| 11 | Akt1 | 0 | 1.8239098 | up |
| 12 | caps | 0 | 1.3298805 | up |
| 13 | pigs | 0 | 2.1110914 | up |
| 14 | RpS16 | 0 | 0.2038773 | stable |
| 15 | lncRNA:CR42862 | 0 | 1.6077967 | up |
| 16 | Hrb27C | 0 | 0.8023477 | up |
| 17 | kst | 0 | 1.8636534 | up |
| 18 | CHES-1-like | 0 | 1.6736544 | up |
| 19 | CG6700 | 0 | 2.4572175 | up |
| 20 | Stat92E | 0 | 1.4018825 | up |
| 21 | kis | 0 | 1.7723155 | up |
| 22 | l(3)L1231 | 0 | 1.3570730 | up |
| 23 | cv-c | 0 | 1.0123887 | up |
| 24 | mys | 0 | 1.1617717 | up |
| 25 | shot | 0 | 1.1602663 | up |
| 26 | Map205 | 0 | 1.6720357 | up |
| 27 | Dys | 0 | 1.5247252 | up |
| 28 | lncRNA:CR34335 | 0 | 0.5587293 | up |
| 29 | hdc | 0 | 1.0355312 | up |
| ⋮ | ⋮ | ⋮ | ⋮ | ⋮ |
| 10604 | RpL6 | 0 | -0.5869036 | down |
| 10605 | RpS28b | 0 | -0.6134545 | down |
| 10606 | RpS3A | 0 | -0.7410227 | down |
| 10607 | RpL18 | 0 | -0.6139038 | down |
| 10608 | RpS20 | 0 | -0.7160333 | down |
| 10609 | RpL13A | 0 | -0.5750531 | down |
| 10610 | RpS21 | 0 | -0.6162846 | down |
| 10611 | eEF1gamma | 0 | -1.2351791 | down |
| 10612 | RpL23 | 0 | -0.5849683 | down |
| 10613 | RpS7 | 0 | -0.5962536 | down |
| 10614 | RpL38 | 0 | -1.0536221 | down |
| 10615 | RpL36 | 0 | -0.6665472 | down |
| 10616 | RpS24 | 0 | -0.7449768 | down |
| 10617 | RpS19a | 0 | -1.0032190 | down |
| 10618 | RpL30 | 0 | -1.0786418 | down |
| 10619 | RpL18A | 0 | -0.5842592 | down |
| 10620 | RpS27 | 0 | -0.6730401 | down |
| 10621 | RpL39 | 0 | -0.8620096 | down |
| 10622 | RpL29 | 0 | -0.8505455 | down |
| 10623 | RpS5a | 0 | -0.8037218 | down |
| 10624 | RpS17 | 0 | -1.1255785 | down |
| 10625 | RpL5 | 0 | -1.8739332 | down |
| 10626 | RpL23A | 0 | -0.9589633 | down |
| 10627 | RpL37A | 0 | -0.8525162 | down |
| 10628 | RpS13 | 0 | -0.8740362 | down |
| 10629 | RpS25 | 0 | -0.7977920 | down |
| 10630 | RpL24 | 0 | -0.9138611 | down |
| 10631 | RpL11 | 0 | -1.1803279 | down |
| 10632 | RpL40 | 0 | -1.0874639 | down |
| 10633 | RpL22 | 0 | -2.3085504 | down |
down = pa14DEG$names[pa14DEG$status=='down']
geneTmp = bitr(down,fromType = 'SYMBOL',toType = 'ENTREZID',OrgDb = 'org.Dm.eg.db',drop = FALSE)
numTmp = sum(is.na(geneTmp[,2]))
print(paste0(numTmp,' genes failed to map.'))
geneTmp[is.na(geneTmp[,2]),]
'select()' returned 1:1 mapping between keys and columns
Warning message in bitr(down, fromType = "SYMBOL", toType = "ENTREZID", OrgDb = "org.Dm.eg.db", :
“5.61% of input gene IDs are fail to map...”
[1] "72 genes failed to map."
| SYMBOL | ENTREZID | |
|---|---|---|
| <chr> | <chr> | |
| 29 | Strumpellin | NA |
| 48 | Sin | NA |
| 62 | CG4662 | NA |
| 65 | CG9723 | NA |
| 73 | CG11453 | NA |
| 148 | Rcp | NA |
| 159 | CG5287 | NA |
| 164 | lncRNA:CR42875 | NA |
| 165 | CG10880 | NA |
| 195 | CG16979 | NA |
| 198 | CG5027 | NA |
| 229 | CG5037 | NA |
| 235 | CG7009 | NA |
| 239 | RpI12 | NA |
| 319 | CG1427 | NA |
| 327 | CG5220 | NA |
| 352 | CHORD | NA |
| 355 | CG6388 | NA |
| 367 | CG10960 | NA |
| 371 | CG15440 | NA |
| 375 | CG7638 | NA |
| 376 | CG7206 | NA |
| 385 | CG2911 | NA |
| 421 | CG31357 | NA |
| 429 | CG8311 | NA |
| 438 | CG5734 | NA |
| 452 | CG10166 | NA |
| 468 | CG17337 | NA |
| 477 | l(2)37Cg | NA |
| 493 | CG3756 | NA |
| ⋮ | ⋮ | ⋮ |
| 697 | CG9911 | NA |
| 728 | CG9253 | NA |
| 755 | CG5599 | NA |
| 779 | Rpb10 | NA |
| 791 | CG11137 | NA |
| 794 | CG9577 | NA |
| 801 | CG7470 | NA |
| 814 | CG5044 | NA |
| 826 | CG5028 | NA |
| 845 | CG33977 | NA |
| 849 | CG17278 | NA |
| 879 | CG8397 | NA |
| 884 | CG9065 | NA |
| 886 | CG10103 | NA |
| 920 | CG3678 | NA |
| 922 | CG8974 | NA |
| 925 | CG2862 | NA |
| 982 | lncRNA:CR43051 | NA |
| 996 | TMS1 | NA |
| 1042 | CG10932 | NA |
| 1066 | CG7834 | NA |
| 1069 | Rpb12 | NA |
| 1076 | CG12163 | NA |
| 1090 | CG6084 | NA |
| 1094 | CG5590 | NA |
| 1098 | smt3 | NA |
| 1119 | Eip55E | NA |
| 1135 | Thiolase | NA |
| 1156 | CtsB1 | NA |
| 1183 | CG7414 | NA |
anaGO(na.omit(geneTmp[,2]),prefix = 'pa14_down')

agingDEG = read.csv('aging_DEG.csv',header = TRUE,row.names = 1)
agingDown = agingDEG$names[agingDEG$status=='down']
venn.diagram(x=list(agingDown,down),category.names = c("aging Down","PA14 Down"),scaled = FALSE,alpha = 0.3,filename = "aging_PA14_Down_venn.png",imagetype = "png",resolution = "720")
1
tmp = intersect(agingDown,down)
geneTmp = bitr(tmp,fromType = 'SYMBOL',toType = 'ENTREZID',OrgDb = 'org.Dm.eg.db',drop = FALSE)
numTmp = sum(is.na(geneTmp[,2]))
print(paste0(numTmp,' genes failed to map.'))
geneTmp[is.na(geneTmp[,2]),]
'select()' returned 1:1 mapping between keys and columns
Warning message in bitr(tmp, fromType = "SYMBOL", toType = "ENTREZID", OrgDb = "org.Dm.eg.db", :
“7.76% of input gene IDs are fail to map...”
[1] "45 genes failed to map."
| SYMBOL | ENTREZID | |
|---|---|---|
| <chr> | <chr> | |
| 14 | CG9723 | NA |
| 21 | CG4662 | NA |
| 31 | Rcp | NA |
| 42 | CG16979 | NA |
| 44 | CG10880 | NA |
| 71 | CG11453 | NA |
| 82 | CG5037 | NA |
| 84 | CG5287 | NA |
| 89 | CG3756 | NA |
| 103 | CG6388 | NA |
| 105 | CG9527 | NA |
| 106 | CHORD | NA |
| 107 | CG31357 | NA |
| 108 | CG1427 | NA |
| 157 | CG5734 | NA |
| 159 | CG10166 | NA |
| 163 | CG32521 | NA |
| 169 | CG9911 | NA |
| 175 | CG11781 | NA |
| 178 | CG5599 | NA |
| 185 | CG17337 | NA |
| 191 | l(2)37Cg | NA |
| 195 | Rpb8 | NA |
| 204 | CG8311 | NA |
| 219 | CG7470 | NA |
| 229 | CG15168 | NA |
| 231 | CG14184 | NA |
| 248 | CG10672 | NA |
| 263 | CG33977 | NA |
| 265 | CG11137 | NA |
| 279 | CG17278 | NA |
| 283 | CG10960 | NA |
| 317 | TMS1 | NA |
| 338 | CG5028 | NA |
| 367 | CG5044 | NA |
| 372 | CG9577 | NA |
| 388 | CG10932 | NA |
| 396 | Rpb12 | NA |
| 431 | CG5590 | NA |
| 435 | CtsB1 | NA |
| 443 | CG6084 | NA |
| 453 | lncRNA:CR43051 | NA |
| 465 | Thiolase | NA |
| 473 | Eip55E | NA |
| 476 | CG7834 | NA |
anaGO(na.omit(geneTmp[,2]),prefix = 'aging_pa14_intersect_down')

tmp = intersect(agingDEG$names[agingDEG$status=='up'],pa14DEG$names[pa14DEG$status=='up'])
tmp[grep('^CG',tmp,invert = TRUE)]
venn.diagram(x=list(agingDEG$names[agingDEG$status=='up'],pa14DEG$names[pa14DEG$status=='up']),category.names = c("aging Up","PA14 Up"),scaled = FALSE,alpha = 0.3,filename = "aging_PA14_Up_venn.png",imagetype = "png",resolution = "720")
1
geneTmp = bitr(tmp,fromType = 'SYMBOL',toType = 'ENTREZID',OrgDb = 'org.Dm.eg.db',drop = FALSE)
numTmp = sum(is.na(geneTmp[,2]))
print(paste0(numTmp,' genes failed to map.'))
geneTmp[is.na(geneTmp[,2]),]
anaGO(na.omit(geneTmp[,2]),prefix = 'aging_pa14_intersect_up')
'select()' returned 1:1 mapping between keys and columns
Warning message in bitr(tmp, fromType = "SYMBOL", toType = "ENTREZID", OrgDb = "org.Dm.eg.db", :
“4.79% of input gene IDs are fail to map...”
[1] "7 genes failed to map."
| SYMBOL | ENTREZID | |
|---|---|---|
| <chr> | <chr> | |
| 3 | CG32368 | NA |
| 7 | CG31324 | NA |
| 50 | CG17265 | NA |
| 65 | CG14906 | NA |
| 67 | CG30456 | NA |
| 90 | CG13704 | NA |
| 104 | Btk29A | NA |
