admin管理员组文章数量:1444264
简单快速的GEO差异基因选取和绘制火山图
简单快速的GEO差异基因选取和绘制火山图
做GEO数据挖掘,有的时候,我们不需要做严格的分析,只想快速拿到差异基因,和简单的一张火山图。用来辅助其他的分析,如网络药理学,可以用以下的代码
代码语言:r复制m(list = ls())
load( file = 'DEG_deseq2.Rdata' )
# load( file = 'DEG_limma_voom.Rdata' )
# load( file = 'DEG_edgeR.Rdata' )
colnames(DEG_deseq2)
#colnames(DEG_limma_voom)
## draw volcano plot quickly
library(dplyr)
library(ggplot2)
library(ggplotify)
deg <- DEG_deseq2
#3.加change列,标记上下调基因
#阈值,可按需修改
logFC_t = 1
p_t = 0.05
#使用padj或p值
k1 = (deg$pvalue < p_t)&(deg$log2FoldChange < -logFC_t)
k2 = (deg$pvalue < p_t)&(deg$log2FoldChange > logFC_t)
deg = mutate(deg,change = ifelse(k1,"down",ifelse(k2,"up","stable")))
table(deg$change)
#保存上调基因和下调基因
up <- deg[deg$change == "up",]
write.csv(up,file = "GSE277906_up_gene.csv")
down <- deg[deg$change == "down",]
write.csv(down,file = "GSE277906_down_gene.csv")
#火山图
library(ggplot2)
p1 <- ggplot(data = deg, aes(x = log2FoldChange, y = -log10(pvalue))) +
geom_point(alpha=0.6, size=1.5, aes(color=change)) +
scale_color_manual(values=c("blue", "grey","red"))+
geom_vline(xintercept=c(-logFC_t,logFC_t),lty=4,col="black",linewidth=0.5) +
geom_hline(yintercept = -log10(p_t),lty=4,col="black",linewidth=0.5) +
theme_classic()
#+
#ggtitle("PCOS vs CON") +
#theme(plot.title = element_text(hjust = 0.5))
ggsave(plot = p1, filename = "deg_vol.pdf",height = 4,width = 5)
本文标签: 简单快速的GEO差异基因选取和绘制火山图
版权声明:本文标题:简单快速的GEO差异基因选取和绘制火山图 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/biancheng/1748157081a2818236.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论