omics4plant

Enrich

flowchart LR
0[Enrich] === |构建富集用的库/包| 1[Enrich-BuildOrgDb]
0 === |对基因集做富集| 2[Enrich-TargetGeneSet]
0 === |条目语义相似性可视化|3[Enrich-GoFigure]
0 === |序列做功能条目注释|0.5[Enrich-eggNOGmapper] --> |option1|1
0.4[(Website: eggNOG-mapper)] --> |option2| 1
1 --> 2
1 --> 2.1([DCS/analysis])
2 --> 3

classDef mainNode fill:#ffcccc,stroke:#ff0000,stroke-width:3px
class 0,0.5,1,2,3 mainNode

to-do

子任务分流程设置

可视化要做好一点

如何投递eggnog-mapper,或者使用galaxy的eggnog-mapper enrichplot可视化和gsea分析后续补上 云平台部署eggnog-mapper

Enrich-eggNOGmapper

本地配置eggNOG-mapper并且进行任意物种的功能注释 https://mp.weixin.qq.com/s/mJpRBwPKiKoq9MT77M8yQg

conda create -n eggnog -c conda-forge -c bioconda "eggnog-mapper>=2" python=3.10 diamond hmmer -y
conda activate eggnog
# mkdir -p /data/db/eggnog-mapper
# export EGGNOG_DATA_DIR=/data/db/eggnog-mapper
# download five files from: http://eggnog5.embl.de/download/emapperdb-5.0.2/
gunzip eggnog.db.gz
gunzip eggnog_proteins.dmnd.gz
tar -zxvf eggnog.taxa.tar.gz
tar -zxvf mmseqs.tar.gz
tar -zxvf pfam.tar.gz

# How to run and example
emapper.py --cpu 4 --mp_start_method forkserver \
--data_dir /data/work/Enrich/eggNOGmapper/db -o test \
--output_dir /data/work/Enrich/eggNOGmapper/output \
--temp_dir /data/work/Enrich/eggNOGmapper/output \
--override -m diamond --dmnd_ignore_warnings \
-i /data/work/Enrich/TM-1_V2.1.gene.pep.fa \
--evalue 0.001 --score 60 --pident 40 --query_cover 20 \
--subject_cover 20 --itype proteins --tax_scope auto \
--target_orthologs all --go_evidence non-electronic \
--pfam_realign none --report_orthologs --decorate_gff yes \
--excel

emapper.py –help

Enrich-BuildOrgDb

eggnog-mapper

解决了之前要安装包才能调用库的问题

orgdb <- loadDb("/data/work/0.peanut/orgdb/output/org.Ahypogaea.eg.db/inst/extdata/org.Ahypogaea.eg.sqlite") #加载本地数据库
keytypes(orgdb)  # 查看这个数据库中有哪几种keytypes
#  [1] "EVIDENCE"    "EVIDENCEALL" "GENENAME"    "GID"         "GO"         
#  [6] "GOALL"       "Ko"          "ONTOLOGY"    "ONTOLOGYALL" "Pathway"    
length(keys(orgdb)) #查看包含的基因数量
# [1] 68781
columns(orgdb)  #查看OrgDb对象的数据类型
#  [1] "EVIDENCE"    "EVIDENCEALL" "GENENAME"    "GID"         "GO"         
#  [6] "GOALL"       "Ko"          "ONTOLOGY"    "ONTOLOGYALL" "Pathway" 
saveDb(orgdb,file="/data/work/0.peanut/orgdb/output/Ahypogaea.Orgdb") #把Capra_hircus对象保存成Capra_hircus.OrgDb文件。

Enrich-TargetGeneSet

先构建package,package构建好后输出.tar.gz,作为Enrich-TargetGeneSet的输入dbTarGz

富集设置qvalueCutoff和pvalueCutoff为0.05,结果按p.dajust从小到大排序,然后对各个Ontology的p.dajust取前十小的条目进行柱状图可视化

单一csv和多个csv,多个csv应是缺乏cluster信息的,如果是多个csv,但是有cluster信息,我们需要将文件信息和原来的cluster做一个连接。

环境搭建 clusterprofiler安装-六种方法

conda create -n r r-base=4.2 -y
conda activate r
yum install libicu libicu-devel
conda install conda-forge::r-biocmanager -y
conda install bioconda::bioconductor-clusterprofiler -y
# BiocManager::install("clusterProfiler")
conda install conda-forge::r-tidyverse -y
conda install bioconda::bioconductor-annotationforge -y

Enrich-GoFigure

GO-Figure,这是一个开源 Python 软件,用于生成用户可定制的冗余减少的 GO 术语列表的semantic space语义相似性散点图。通过使用量化的信息内容和语义相似性将具有相似功能的术语分组在一起,并由用户控制分组阈值,可以简化列表。然后选择代表在二维语义空间中绘制,其中相似的术语在散点图上彼此更靠近,并具有一系列用户可定制的图形属性

gofigure的背景文件下载ic.tsv, relations_full.tsv, go.obo gofigure rep

富集结果解读

Reference