gokegg-analysis

GitHub

针对批量RNA-seq或微阵列数据的基因列表,执行GO和KEGG富集分析并生成组合点图。支持SYMBOL等ID及人鼠大鼠物种数据库,排除单细胞及非表达组学数据。

awesome-med-research-skills/Data Analysis/gokegg/SKILL.md aipoch/medical-research-skills

Trigger Scenarios

需要执行GO/KEGG功能富集分析 需要生成生物信息学富集结果图表

Install

npx skills add aipoch/medical-research-skills --skill gokegg-analysis -g -y
More Options

Non-standard path

npx skills add https://github.com/aipoch/medical-research-skills/tree/main/awesome-med-research-skills/Data Analysis/gokegg -g -y

Use without installing

npx skills use aipoch/medical-research-skills@gokegg-analysis

指定 Agent (Claude Code)

npx skills add aipoch/medical-research-skills --skill gokegg-analysis -a claude-code -g -y

安装 repo 全部 skill

npx skills add aipoch/medical-research-skills --all -g -y

预览 repo 内 skill

npx skills add aipoch/medical-research-skills --list

SKILL.md

Frontmatter
{
    "name": "gokegg-analysis",
    "author": "AIPOCH",
    "license": "MIT",
    "description": "Use when performing GO and KEGG enrichment on a gene list from bulk RNA-seq or microarray studies, then generating a combined GO\/KEGG dot chart. NOT for single-cell RNA-seq, methylation data, or non-expression data."
}

Source: https://github.com/aipoch/medical-research-skills

When To Read External Files

Situation File To Read Purpose
Need algorithm details references/algorithm.md Statistical methods and formulas
Need to run the analysis scripts/main.R Full execution command
Encounter an error references/troubleshooting.md Troubleshooting guidance
Need CLI examples references/cli-guide.md Parameter usage examples

When To Use

Use this skill for:

  • GO and KEGG enrichment from a gene list derived from bulk RNA-seq or microarray studies
  • Supported gene ID types: SYMBOL, ENSEMBL, ENTREZID
  • Supported species databases: org.Hs.eg.db, org.Mm.eg.db, org.Rn.eg.db

Do not use this skill for:

  • Single-cell RNA-seq analysis
  • Methylation, proteomics, or non-expression omics workflows
  • Differential expression testing from raw count matrices

Usage

Main analysis and plotting: Rscript scripts/main.R --feature "TP53,EGFR,BRCA1,MYC" --output_dir ./output --sp org.Hs.eg.db --gene_type SYMBOL --pvalue_cutoff 0.05 --qvalue_cutoff 0.2 --pAdjustMethod BH --seed 66 --go_top_n 3 --kegg_top_n 3 --format pdf

Notes:

  • scripts/main.R is the only command-line entry point
  • scripts/dochart.R currently provides plotting functions and is sourced by scripts/main.R
  • If --go_input, --kegg_input, or --outdir are omitted, main.R uses output_dir/temp/GO_list.rda, output_dir/temp/KEGG_list.rda, and output_dir/plot automatically

Agent Output

On success, the agent should report:

  • Whether GO enrichment completed successfully
  • Whether KEGG enrichment completed successfully
  • The normalized input gene count after trimming and parsing
  • The main output directory
  • The generated files, especially GO_df.csv, KEGG_df.csv, GO_list.rda, KEGG_list.rda, and the combined dot chart
  • The path to session_info.txt

Post-run checklist:

  • Re-parse the original --feature string using the documented separator rules and report the deduplicated gene count after trimming
  • Check temp/GO_df.csv and temp/GO_list.rda before claiming GO success
  • Check temp/KEGG_df.csv and temp/KEGG_list.rda before claiming KEGG success
  • Check plot/gokegg_dot_chart.<format>, plot/gokegg_dot_chart_data.csv, plot/gokegg_dot_chart_data.rda, and session_info.txt before claiming full success
  • Summarize the final result with: parsed gene count, GO status, KEGG status, plot status, output directory, and key output files

On failure, the agent should report:

  • The exact SKILL_* error code
  • The failing step, such as gene parsing, ID conversion, enrichment, or plotting
  • The actionable next step, such as fixing input IDs, checking missing packages, or regenerating .rda files

Parameter Reference

scripts/main.R

Short Long Type Default Required Description
-f --feature character "" Yes Gene list separated by commas, Chinese commas, semicolons, tabs, or newlines
-o --output_dir character ./output/ No Main output directory
-s --sp character org.Hs.eg.db No Species database
-g --gene_type character SYMBOL No Input gene ID type
-p --pvalue_cutoff numeric 0.05 No Enrichment p-value cutoff
-q --qvalue_cutoff numeric 0.2 No Enrichment q-value cutoff
-m --pAdjustMethod character BH No P-value adjustment method
--seed integer 66 No Random seed
--go_input character NULL No Optional GO .rda; defaults to output_dir/temp/GO_list.rda
--kegg_input character NULL No Optional KEGG .rda; defaults to output_dir/temp/KEGG_list.rda
--outdir character NULL No Plot output directory; defaults to output_dir/plot
--go_top_n numeric 3 No Top GO terms per ontology
--kegg_top_n numeric 3 No Top KEGG pathways
-w --width numeric 20 No Plot width in cm
--height numeric 16 No Plot height in cm
--format character pdf No Plot format: pdf, png, svg
--dpi numeric 300 No DPI for raster output
-c --colors character #E41A1C,#FFFF33,#2E86AB,#4DAF4A No Colors for GO:BP,GO:CC,GO:MF,KEGG
--title character GO + KEGG Dot Chart No Plot title
--xlab character NULL No Horizontal axis label override
--ylab character NULL No Vertical axis label override
--dot_size numeric 4.5 No Dot size
--shape numeric 19 No Dot shape
--rotate / --no-rotate logical flag TRUE No Rotate plot orientation on or off
--sorting character descending No Dot sorting order
--label_width numeric 35 No Label wrap width
--title_size numeric 12 No Title font size
--axis_title_size numeric 9 No Axis title font size
--axis_text_size numeric 8 No Axis text font size
--legend_title_size numeric 8 No Legend title font size
--legend_text_size numeric 7 No Legend text font size
--legend_position character top No Legend position
--plot_margin character 10,10,10,10 No Plot margins: top,right,bottom,left
--axis_line_size numeric 0.5 No Axis line width
--axis_ticks_size numeric 0.5 No Axis tick width
--show_grid logical FALSE No Show grid lines
-v --verbose logical FALSE No Enable verbose logging

Input Format

Main Analysis Input

  • --feature should be provided as a gene list
  • Preferred separator: comma
  • Also accepted: Chinese commas, semicolons, tabs, and newlines
  • Leading and trailing spaces around each gene are removed automatically with trimming
  • The gene ID type must match --gene_type
  • --sp supports only org.Hs.eg.db, org.Mm.eg.db, and org.Rn.eg.db

Examples: TP53,EGFR,BRCA1,MYC

TP53, EGFR, BRCA1, MYC

TP53;EGFR;BRCA1;MYC

TP53\nEGFR\nBRCA1\nMYC

Example command with minimal input: Rscript scripts/main.R --feature "TP53,EGFR,BRCA1,MYC" --output_dir ./example_output --sp org.Hs.eg.db --gene_type SYMBOL

Example command with custom plotting parameters: Rscript scripts/main.R --feature "TP53,EGFR,BRCA1,MYC" --output_dir ./example_plot_output --sp org.Hs.eg.db --gene_type SYMBOL --go_top_n 5 --kegg_top_n 8 --colors "#E41A1C,#FFFF33,#2E86AB,#4DAF4A" --title "Custom GO + KEGG Dot Chart" --xlab="-log10(adjusted p-value)" --ylab="Enriched Terms" --width 24 --height 18 --label_width 40 --format png --dpi 300 --no-rotate --verbose

Note: values passed to --xlab or --ylab that start with - should use --option=value syntax to avoid being parsed as flags.

Note: separator variants are supported only when they are passed inside a single --feature argument value.

Plot Input

  • Plotting is triggered by scripts/main.R
  • --go_input: optional .rda file containing a GO_list object
  • --kegg_input: optional .rda file containing a KEGG_list object
  • If not provided, main.R uses the newly generated files under output_dir/temp
  • Plotting requires result tables with at least Description and p.adjust

Output Files

File Name Format Description
temp/GO_df.csv CSV GO enrichment result table
temp/GO_list.rda RDA Full GO enrichment object
temp/KEGG_df.csv CSV KEGG enrichment result table
temp/KEGG_list.rda RDA Full KEGG enrichment object
plot/gokegg_dot_chart.pdf etc. PDF/PNG/SVG Combined GO/KEGG dot chart
plot/gokegg_dot_chart_data.csv CSV Combined plotting table used for the figure
plot/gokegg_dot_chart_data.rda RDA Plot bundle with plotting data and parameters
session_info.txt TXT Runtime session information

Error Handling

Common error codes and fixes:

  • SKILL_FILE_NOT_FOUND: Input file does not exist; check the path and permissions
  • SKILL_FILE_FORMAT_ERROR: .rda cannot be read or is malformed; regenerate upstream results
  • SKILL_MISSING_COLUMNS: Result table is missing Description or p.adjust
  • SKILL_EMPTY_DATA: Input genes are empty after parsing, cannot be converted, or enrichment results are empty
  • SKILL_INVALID_PARAMETER: Required parameter missing, unsupported species, or insufficient color count
  • SKILL_PACKAGE_NOT_FOUND: Required package is not installed
  • SKILL_ANALYSIS_FAILED: Internal GO/KEGG enrichment failure; verify gene_type, sp, and input genes

For detailed troubleshooting, read references/troubleshooting.md.

Testing

Minimal test dataset: use a small built-in gene list directly, with no extra files required.

Smoke test command: Rscript scripts/main.R --feature "TP53,EGFR,BRCA1,MYC" --output_dir ./test_output --sp org.Hs.eg.db --gene_type SYMBOL --pvalue_cutoff 0.05 --qvalue_cutoff 0.2 --pAdjustMethod BH --seed 66 --go_top_n 3 --kegg_top_n 3 --format pdf --verbose

Expected smoke-test outputs:

  • ./test_output/temp/GO_list.rda
  • ./test_output/temp/KEGG_list.rda
  • ./test_output/temp/GO_df.csv
  • ./test_output/temp/KEGG_df.csv
  • ./test_output/plot/gokegg_dot_chart.pdf
  • ./test_output/plot/gokegg_dot_chart_data.csv
  • ./test_output/plot/gokegg_dot_chart_data.rda
  • ./test_output/session_info.txt
  • Exit status code 0

Automated regression script: Rscript test/test_regressions.R

The regression script covers:

  • Separator parsing with comma, Chinese semicolon, newline, tab, and mixed separators
  • Empty parsed-gene handling
  • Invalid --plot_margin validation
  • Plot input validation for missing GO/KEGG inputs

Separator examples for manual CLI verification: Rscript scripts/main.R --feature "TP53,EGFR,BRCA1,MYC" --output_dir ./test_sep_comma Rscript scripts/main.R --feature "TP53;EGFR;BRCA1;MYC" --output_dir ./test_sep_cn_semicolon Rscript scripts/main.R --feature $'TP53\nEGFR\nBRCA1\nMYC' --output_dir ./test_sep_newline Rscript scripts/main.R --feature $'TP53\tEGFR\tBRCA1\tMYC' --output_dir ./test_sep_tab Rscript scripts/main.R --feature $'TP53; EGFR, BRCA1 MYC' --output_dir ./test_sep_mixed

Note: all separators must be passed inside a single --feature argument value.

Version History

  • f5ef65b Current 2026-07-24 17:04

Same Skill Collection

awesome-med-research-skills/Academic Writing/author-response-builder/SKILL.md
awesome-med-research-skills/Academic Writing/claim-strength-calibrator/SKILL.md
awesome-med-research-skills/Academic Writing/conference-abstract-writer/SKILL.md
awesome-med-research-skills/Academic Writing/consistency-checker-across-manuscript/SKILL.md
awesome-med-research-skills/Academic Writing/cover-letter-drafter/SKILL.md
awesome-med-research-skills/Academic Writing/discussion-composer/SKILL.md
awesome-med-research-skills/Academic Writing/figure-legend-writer/SKILL.md
awesome-med-research-skills/Academic Writing/grant-specific-aims-writer/SKILL.md
awesome-med-research-skills/Academic Writing/graphical-abstract-generator/SKILL.md
awesome-med-research-skills/Academic Writing/introduction-logic-builder/SKILL.md
awesome-med-research-skills/Academic Writing/introduction-section-writer/SKILL.md
awesome-med-research-skills/Academic Writing/latex-manuscript-format-converter/SKILL.md
awesome-med-research-skills/Academic Writing/medical-english-precision-editor/SKILL.md
awesome-med-research-skills/Academic Writing/paper-sprint-review/SKILL.md
awesome-med-research-skills/Academic Writing/poster-storyline-builder/SKILL.md
awesome-med-research-skills/Academic Writing/reference-integrity-checker/SKILL.md
awesome-med-research-skills/Academic Writing/reporting-guideline-compliance-checker/SKILL.md
awesome-med-research-skills/Academic Writing/results-section-structurer/SKILL.md
awesome-med-research-skills/Academic Writing/results-section-writer/SKILL.md
awesome-med-research-skills/Academic Writing/revision-strategy-planner/SKILL.md
awesome-med-research-skills/Academic Writing/slide-deck-for-lab-meeting/SKILL.md
awesome-med-research-skills/Academic Writing/table-narrative-writer/SKILL.md
awesome-med-research-skills/Academic Writing/target-journal-matcher/SKILL.md
awesome-med-research-skills/Academic Writing/title-and-abstract-optimizer/SKILL.md
awesome-med-research-skills/Data Analysis/batch-effect-correction/SKILL.md
awesome-med-research-skills/Data Analysis/cerna-analysis/SKILL.md
awesome-med-research-skills/Data Analysis/cibersort-immune-infiltration-analysis/SKILL.md
awesome-med-research-skills/Data Analysis/consensus-clustering-analysis/SKILL.md
awesome-med-research-skills/Data Analysis/decision-curve-analysis/SKILL.md
awesome-med-research-skills/Data Analysis/decision-tree-analysis/SKILL.md
awesome-med-research-skills/Data Analysis/deg-screening-analysis/SKILL.md
awesome-med-research-skills/Data Analysis/differential-expression-analysis/SKILL.md
awesome-med-research-skills/Data Analysis/elastic-net-feature-selection/SKILL.md
awesome-med-research-skills/Data Analysis/estimate-immune-score-analysis/SKILL.md
awesome-med-research-skills/Data Analysis/external-model-validation/SKILL.md
awesome-med-research-skills/Data Analysis/gene-protein-expression-matrix-normalization/SKILL.md
awesome-med-research-skills/Data Analysis/gsea/SKILL.md
awesome-med-research-skills/Data Analysis/gsva-analysis-and-visualization/SKILL.md
awesome-med-research-skills/Data Analysis/hierarchical-clustering-plot/SKILL.md
awesome-med-research-skills/Data Analysis/immune-pathway-analysis/SKILL.md
awesome-med-research-skills/Data Analysis/km-survival-curve/SKILL.md
awesome-med-research-skills/Data Analysis/knn-imputation/SKILL.md
awesome-med-research-skills/Data Analysis/lasso-logistics-analysis/SKILL.md
awesome-med-research-skills/Data Analysis/LightGBM-analysis/SKILL.md
awesome-med-research-skills/Data Analysis/lncrna-regulatory-network-construction-analysis/SKILL.md
awesome-med-research-skills/Data Analysis/model-calibration-curve/SKILL.md
awesome-med-research-skills/Data Analysis/nomogram-construction/SKILL.md
awesome-med-research-skills/Data Analysis/pca-dimensionality-reduction/SKILL.md
awesome-med-research-skills/Data Analysis/ppi-network-analysis/SKILL.md

Metadata

Files
0
Version
f5ef65b
Hash
cbfbdd15
Indexed
2026-07-24 17:04

inicio - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-08-16 20:46
浙ICP备14020137号-1 $mapa de visitantes$