今天我们介绍一个实用R包:CEMiTool
官方对它的介绍是这样:CEMiTool是一个易于使用的包。这个过程需要一个基因表达文件,文件包含基因行名和样本列名。然后这个R包基于反gamma分布的无监督过滤方法将选择在分析中使用的基因,使用改进的算法选择一个软阈值β,并使用该值来确定每对基因之间的相似度标准,最后使用动态树切包将基因分成模块。此外,如果用户提供一个样本注释文件,CEMiTool可以执行基因集富集分析(GSEA),用户可以可视化感兴趣的模块是否在不同的表型中被诱导或抑制,将模块与研究表型(即样品组别)相关联。如果用户给定一个包含基因集的可选文件,CEMiTool则可以做过表示分析(ORA),以确定不同模块富集到的生物学功能,可用于揭示不同模块是否富集属于已知途径或功能的基因。如果提供了一个包含基因相互作用(例如蛋白质-蛋白质相互作用数据)的可选文件,该包将返回由同一模块内的相互作用基因组成的网络图。

如果懒得看上面一大段文字,简单说CEMiTool这个R包可以做基因共表达分析,表达趋势分析,GSEA,过表达分析(ORA),基因互作网络分析。
接着作者将CEMiTool和一些已知的共表达分析工具进行比较,可以看出CEMiTool具有较大的优势。
最后上代码看一下分析结果出图吧
# 安装 cemitool
BiocManager::install("CEMiTool")
library("CEMiTool")
library(ggplot2)
# 导入数据
data(expr0)
data(sample_annot)
gmt_in <- read_gmt(system.file("extdata", "pathways.gmt", package = "CEMiTool"))
int_df <- read.delim(system.file("extdata", "interactions.tsv", package = "CEMiTool"))
# 一行代码搞定WGCNA、GSEA、ORA、PPI
cem <- cemitool(expr0, sample_annot, gmt_in, interactions=int_df,
filter=TRUE, plot=TRUE, verbose=TRUE)
# 创建html文档报告
generate_report(cem, directory="./Tables")
# 将分析结果写入文件
write_files(cem, directory="./Tables")
# 保存所有出图
save_plots(cem, "all", directory="./Plots")
基因共表达分析模块分类结果:
基因表达趋势分析结果(这里仅列出M1模块,g0,g3,g7为样品名):
GSEA:
过表达分析(ORA,这里仅列出M1模块结果):
相互作用网络(这里仅列出M1模块):
总体来说还是不错的,尤其最后的互作网络出图还是挺符合审美的,感兴趣的小伙伴抓紧试试吧!