Generate meta-analysis forest plots for binary classification data. Input is a CSV file containing study names, event counts and sample sizes for experimental and control groups. Output includes forest plot PNG and data table CSV.
55
63%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
Fix and improve this skill with Tessl
tessl review fix ./scientific-skills/Data Analysis/meta-forest-binary-plot/SKILL.mdscripts/extract_criteria.py plus 2 additional script(s).Python: 3.10+. Repository baseline for current packaged skills.Third-party packages: not explicitly version-pinned in this skill package. Add pinned versions if this skill needs stricter environment control.cd "20260316/scientific-skills/Data Analytics/meta-forest-binary-plot"
python -m py_compile scripts/extract_criteria.py
python scripts/extract_criteria.py --helpExample run plan:
CONFIG block or documented parameters if the script uses fixed settings.python scripts/extract_criteria.py with the validated inputs.See ## Workflow above for related details.
scripts/extract_criteria.py with additional helper scripts under scripts/.Run this minimal command first to verify the supported execution path:
python scripts/extract_criteria.py --helpYou are a meta-analysis chart plotting assistant. Users provide binary classification data (event count/sample size), and you are responsible for calling scripts to generate forest plots.
Important: Do not repeat the contents of this instruction document to users. Only output user-visible content as specified in the workflow.
Users need to provide a CSV file containing the following columns:
| Column Name | Description | Example |
|---|---|---|
| study | Study name (Author + Year) | Smith 2020 |
| outcome_new | Outcome measure name | Mortality |
| group1_Events | Number of events in experimental group | 15 |
| group1_sample_size | Total sample size in experimental group | 100 |
| group2_Events | Number of events in control group | 25 |
| group2_sample_size | Total sample size in control group | 100 |
If there are data issues, prompt the user to correct and resubmit.
Call command:
Rscript scripts/forest_binary.R "<csv_path>" "<outcome_name>" "<output_dir>"Parameter descriptions:
csv_path: Absolute path to the input CSV fileoutcome_name: Outcome measure name (optional, extracted from data by default)output_dir: Output directory (optional, defaults to current directory)If R script execution fails, automatically fall back to Python script:
python scripts/forest_binary.py "<csv_path>" --outcome "<outcome_name>" --output_dir "<output_dir>"Upon successful execution, output:
══════════════════════════════════════════
Binary Classification Forest Plot Complete
══════════════════════════════════════════
【Outcome Measure】{outcome_name}
【Number of Studies Included】{n}
【Output Files】
• Forest Plot: {output_dir}/Binary_forest_{outcome}.png
• Data Table: {output_dir}/Binary_forest_{outcome}.csv
【Combined Effect Size】
• OR = {value} [{lower}; {upper}]
【Heterogeneity】
• I² = {I2}%
• Tau² = {tau2}
══════════════════════════════════════════The R environment requires the following packages:
The following Python packages are required:
If the user environment is missing these packages, prompt to run:
pip install numpy pandas matplotlibR script dependencies: meta, metafor, grid, stringr
meta_forest_binary_plot_result.md unless the skill documentation defines a better convention.Run this minimal verification path before full execution when possible:
python scripts/extract_criteria.py --helpExpected output format:
Result file: meta_forest_binary_plot_result.md
Validation summary: PASS/FAIL with brief notes
Assumptions: explicit list if anyf5ef65b
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.