2018年SCI论文–整合GEO数据挖掘完整复现 七 :DAVID在线工具进行KEGG富集分析

文章目录论文地址DAVID官网获得KEGG富集分析结果气泡图cytoscape软件绘制代谢通路网络图networkdatatabledata论文地址DAVID官网KEGG富集分析和GO富集分析方法一致,具体步骤见我上篇文章DAVID在线工具进行GO富集分析,这里主要展示可视化结果获得KEGG富集分析结果1.输入文件为所有差异表达基因列表2.选择GO富集分析结果时,我们点击“Path…

大家好,又见面了,我是你们的朋友全栈君。

论文地址

DAVID官网

KEGG富集分析和GO富集分析方法一致,具体步骤见我上篇文章DAVID在线工具进行GO富集分析,这里主要展示可视化结果

获得KEGG富集分析结果

1.输入文件为所有差异表达基因列表
2.选择GO富集分析结果时,我们点击“Pathways (1 selected)”下拉选项,选择“KEGG_PATHWAY”选项,最后保存为”kegg_pathway.txt”文件
在这里插入图片描述
在这里插入图片描述

气泡图

setwd("./3.DAVID_GO_KEGG/KEGG")
rt = read.table(file = 'kegg_pathway.txt',sep = '\t',header = T,quote = '')
keggSig = rt[rt$PValue < 0.05,]
library(tidyr)
keggSig = separate(keggSig, Term, sep = ":",
                 into = c("ID", "Term"))

library(ggplot2)
ggplot(keggSig,aes(x=Fold.Enrichment,y=Term)) + 
  geom_point(aes(size=Count,color=-1*log10(PValue)))+
  scale_colour_gradient(low="green",high="red")+
  labs(
    color=expression(-log[10](P.value)),
    size="Gene number",
    x="Fold enrichment"
    # y="Pathway name",
    # title="Pathway enrichment")
  )+
  theme_bw()+
  theme(
    axis.text.y = element_text(size = rel(1.3)),
    axis.title.x = element_text(size=rel(1.3)),
    axis.title.y = element_blank()
  )
ggsave('plot.pdf',width = 7,height = 4)

在这里插入图片描述

cytoscape软件绘制代谢通路网络图

软件下载地址,配置环境为java8,软件会自动下载安装java8,如果装了java9需要卸载后再安装,cytoscape教学视频

准备输入文件

network data
library(tidyr)
  separate_keggSig = separate_rows(keggSig,Genes)
  network_data = separate_keggSig[,c('ID','Genes')]
  colnames(network_data)[2] = 'Name'
  write.table(network_data,
              file = 'network_data.txt',
              sep = '\t',
              quote = F,
              row.names = F,
              col.names = T)
              
table data
uniGene = unique(network_data$Name)
  allSign = read.table(file = 'allSign.xls',sep = '\t',header = T,quote = '')
  pathway_gene = allSign[match(uniGene,allSign$Name),]
  pathway_gene$status = ifelse(pathway_gene$logFC > 0,'up','down')
  
  df = data.frame(Name = keggSig[,2],status = rep('id',nrow(keggSig)))
  table_data = rbind(df,pathway_gene[,c(1,3)])
  write.table(table_data,
              file = 'table_data.txt',
              sep = '\t',
              quote = F,
              row.names = F,
              col.names = T)

输入network文件

在这里插入图片描述

输入table文件

默认设置就好
在这里插入图片描述

设置风格、颜色

在这里插入图片描述

手动调整、保存图片

这个比较花时间,适合边听歌边画,还挺有意思的,哈哈
在这里插入图片描述

下面就是成品了,还是挺难看的,果然没有艺术细胞,一般图片保存为pdf格式,也可以保存为cys文件,方便再次在cytoscape中打开
在这里插入图片描述
本博客内容将同步更新到个人微信公众号生信玩家。欢迎大家关注~~~
在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/125647.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 自抗扰控制(ADRC)—— python 实战「建议收藏」

    自抗扰控制(ADRC)—— python 实战「建议收藏」本文利用跟踪微分器(TD)、扩张状态观测器(ESO)和非线性PID实现了受外扰的未知系统的控制,使得受控系统输出了期望信号。

    2022年5月18日
    38
  • 解决笔记本外接机械键盘win键失灵的问题

    解决笔记本外接机械键盘win键失灵的问题按住Fn+PrtSc就可以解锁

    2022年5月30日
    450
  • js 字符串转数组,js 字符串截取

    js 字符串转数组,js 字符串截取js字符串转数组:varstring="20170524191718-173910&amp;135562983280&amp;1";varstr=string.split("&amp;");console.log(str);结果显示:console.log(str[2]);//1js字符串截取:varfilename=$("#"+fileid).v…

    2022年6月3日
    37
  • url 转码 java_java中URL转码[通俗易懂]

    url 转码 java_java中URL转码[通俗易懂]在传递参数的时候,如果有中文,那么可以先转码再转,之后再解码。URLEncoder.encode与URLDecoder.docode传递中文参数编码与解码使用java.net.URLEncoder.encode()可以对要传递的中文进行编码a.在传参数之前先把参数进行转码:java.net.URLEncoder.encode(param);取值时用语句java.net.URLDecoder.dec…

    2022年10月24日
    0
  • 数据库ER图该怎么画

    数据库ER图该怎么画什么是ER图实体关系图,通过一张ER图,能够快速的了解数据库层面的表结构设计。目前做企业级应用系统,花费了大量的时间在数据库表结构的设计上,所以打算从源头梳理一下怎么样才能画好ER图,画好图是第一步,在这个过程中怎么样做好设计,然后来保证业务系统的功能实现以及扩展性的要求。 ER图的核心要素是什么实体:客观存在并可以相互区别的事物属性:实体所具有的一个属性关系:实…

    2022年6月21日
    104
  • Raid5磁盘阵列修复方法介绍「建议收藏」

    Raid5磁盘阵列修复方法介绍「建议收藏」  在RAID5中,数据条带化后存储在分布式奇偶校验的多个磁盘上。分布式奇偶校验的条带化意味着它将奇偶校验信息和条带化数据分布在多个磁盘上,这样会有很好的数据冗余。而有时候raid5磁盘阵列损坏,我们该如何修复呢?  1.若单个硬盘失效,尝试热插拔,即拔下来再插上去;如果不能解决,则进入RAID配置界面,将该硬盘进行ForceOnLine操作;如果不能解决,尝试更换-其它硬盘…

    2022年4月28日
    1.4K

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号