Source: https://github.com/aipoch/medical-research-skills
When to Use
- You have experimental results in CSV form and need a reproducible end-to-end analysis workflow (clean → test → report).
- You need to compare two conditions (independent or paired) and determine statistical significance with effect sizes.
- You need to compare 3+ groups (one-way) or multiple factors (multi-way) using ANOVA and post-hoc multiple comparisons.
- You must validate assumptions (normality, homogeneity of variance) and document them in a report.
- You need standardized run outputs (timestamped run directories) for traceability and auditing.
Key Features
- Reproducible, run-based execution that writes all artifacts into
outputs/runs/<timestamp>/.
- Data preparation guidance: missing values, outliers, and variable type identification (continuous/categorical; grouping factors).
- Descriptive statistics: means, standard deviations, confidence intervals, and grouped summary tables.
- Inferential testing:
- t-tests (independent/paired) and non-parametric alternatives when assumptions fail.
- ANOVA (one-way and multi-way) with post-hoc testing (e.g., Tukey).
- Reporting outputs: test statistics, p-values, effect sizes, tables, charts, and explicit assumption notes.
- Reference materials for method selection and reporting templates:
references/stats-method-selection.md
references/reporting-template.md
Dependencies
- Python 3.10+
- pandas >= 2.0
- numpy >= 1.24
- scipy >= 1.10
Example Usage
The workflow is run-directory based. Initialize a new run, then analyze using the latest run by default.
# 1) Initialize a new run directory with sample inputs/config
python scripts/init_run.py
# 2) Run analysis (uses the latest outputs/runs/<timestamp>/ by default)
python scripts/analyze_experiment.py
Expected directory conventions:
- A new run directory is created at:
outputs/runs/<timestamp>/
- Configuration file location:
outputs/runs/<timestamp>/config.json
- All intermediate and final artifacts (config, inputs, outputs, figures, tables) must be written inside the run directory.
- Writing outside the run directory is prohibited.
Implementation Details
Reproducible Run Management
- Before each execution, run:
scripts/init_run.py to create outputs/runs/<timestamp>/ and populate initial inputs/config.
- Analysis scripts default to the latest run directory under
outputs/runs/ unless explicitly overridden (if supported by the script).
Analysis Pipeline
Data Preparation
- Handle missing values (e.g., drop, impute, or flag) according to the experimental design.
- Detect and treat outliers (e.g., robust rules, domain thresholds), documenting any exclusions.
- Identify variable roles:
- Outcome variable(s): typically continuous measurements.
- Grouping factors: categorical condition labels (treatment/control, timepoint, genotype, etc.).
Descriptive Statistics
- Compute summary metrics per group:
- Mean, standard deviation, and confidence intervals (commonly 95% CI).
- Produce grouped summary tables suitable for reporting.
Inferential Statistics
- Two-group comparisons
- Use an independent t-test for separate groups.
- Use a paired t-test for repeated measures / matched pairs.
- If assumptions are violated, switch to an appropriate non-parametric alternative.
- Multi-group / multi-factor comparisons
- Use one-way ANOVA for a single factor with 3+ levels.
- Use multi-way ANOVA when multiple factors are present.
- Multiple comparisons
- Apply post-hoc procedures (e.g., Tukey) after ANOVA when needed.
- Define and document the multiple-comparison control strategy.
Assumption Checks and Reporting Standards
- Validate and report:
- Normality (per group or model residuals, as appropriate).
- Homogeneity of variance.
- Report, at minimum:
- Test statistic, degrees of freedom (if applicable), p-value.
- Effect size(s) and confidence intervals where applicable.
- Retain analysis code and random seeds to ensure reproducibility.
1---2name: experimental-data-analysis3description: Statistical analysis and reporting for experimental datasets; use when you need to interpret experimental results, test significance (t-tests/ANOVA), or generate reproducible reports.4license: MIT5---6> **Source**: [https://github.com/aipoch/medical-research-skills](https://github.com/aipoch/medical-research-skills)
7
8## When to Use
9
10- You have experimental results in CSV form and need a reproducible end-to-end analysis workflow (clean → test → report).
11- You need to compare two conditions (independent or paired) and determine statistical significance with effect sizes.
12- You need to compare 3+ groups (one-way) or multiple factors (multi-way) using ANOVA and post-hoc multiple comparisons.
13- You must validate assumptions (normality, homogeneity of variance) and document them in a report.
14- You need standardized run outputs (timestamped run directories) for traceability and auditing.
15
16## Key Features
17
18- Reproducible, run-based execution that writes all artifacts into `outputs/runs/<timestamp>/`.
19- Data preparation guidance: missing values, outliers, and variable type identification (continuous/categorical; grouping factors).
20- Descriptive statistics: means, standard deviations, confidence intervals, and grouped summary tables.
21- Inferential testing:
22 - t-tests (independent/paired) and non-parametric alternatives when assumptions fail.
23 - ANOVA (one-way and multi-way) with post-hoc testing (e.g., Tukey).
24- Reporting outputs: test statistics, p-values, effect sizes, tables, charts, and explicit assumption notes.
25- Reference materials for method selection and reporting templates:
26 - `references/stats-method-selection.md`
27 - `references/reporting-template.md`
28
29## Dependencies
30
31- Python 3.10+
32- pandas >= 2.0
33- numpy >= 1.24
34- scipy >= 1.10
35
36## Example Usage
37
38The workflow is run-directory based. Initialize a new run, then analyze using the latest run by default.
39
40```bash
41# 1) Initialize a new run directory with sample inputs/config
42python scripts/init_run.py
43
44# 2) Run analysis (uses the latest outputs/runs/<timestamp>/ by default)
45python scripts/analyze_experiment.py
46```
47
48Expected directory conventions:
49
50- A new run directory is created at: `outputs/runs/<timestamp>/`
51- Configuration file location: `outputs/runs/<timestamp>/config.json`
52- All intermediate and final artifacts (config, inputs, outputs, figures, tables) must be written inside the run directory.
53- Writing outside the run directory is prohibited.
54
55## Implementation Details
56
57### Reproducible Run Management
58
59- Before each execution, run:
60 - `scripts/init_run.py` to create `outputs/runs/<timestamp>/` and populate initial inputs/config.
61- Analysis scripts default to the latest run directory under `outputs/runs/` unless explicitly overridden (if supported by the script).
62
63### Analysis Pipeline
64
651. **Data Preparation**
66 - Handle missing values (e.g., drop, impute, or flag) according to the experimental design.
67 - Detect and treat outliers (e.g., robust rules, domain thresholds), documenting any exclusions.
68 - Identify variable roles:
69 - Outcome variable(s): typically continuous measurements.
70 - Grouping factors: categorical condition labels (treatment/control, timepoint, genotype, etc.).
71
722. **Descriptive Statistics**
73 - Compute summary metrics per group:
74 - Mean, standard deviation, and confidence intervals (commonly 95% CI).
75 - Produce grouped summary tables suitable for reporting.
76
773. **Inferential Statistics**
78 - **Two-group comparisons**
79 - Use an independent t-test for separate groups.
80 - Use a paired t-test for repeated measures / matched pairs.
81 - If assumptions are violated, switch to an appropriate non-parametric alternative.
82 - **Multi-group / multi-factor comparisons**
83 - Use one-way ANOVA for a single factor with 3+ levels.
84 - Use multi-way ANOVA when multiple factors are present.
85 - **Multiple comparisons**
86 - Apply post-hoc procedures (e.g., Tukey) after ANOVA when needed.
87 - Define and document the multiple-comparison control strategy.
88
894. **Assumption Checks and Reporting Standards**
90 - Validate and report:
91 - Normality (per group or model residuals, as appropriate).
92 - Homogeneity of variance.
93 - Report, at minimum:
94 - Test statistic, degrees of freedom (if applicable), p-value.
95 - Effect size(s) and confidence intervals where applicable.
96 - Retain analysis code and random seeds to ensure reproducibility.