Statistical Analysis

SkillDev tools

Guided statistical analysis with hypothesis-test selection, assumption checking, power analysis, and APA-formatted reporting. Use when choosing the appropriate statistical test for data, verifying test assumptions, computing power/sample size, or producing APA-style results for academic research. For implementing specific models programmatically prefer statsmodels. Part of the AlterLab Academic Skills suite.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the Statistical Analysis skill

What this skill tells your AI

The instructions your AI receives, as published by alterlab-ieu/alterlab-academic-skills in skills/data-science/alterlab-statistical-analysis/SKILL.md and read by ahel’s review.

Overview

A systematic process for testing hypotheses and quantifying relationships. Conduct hypothesis tests (t-test, ANOVA, chi-square), regression, correlation, and Bayesian analyses with assumption checks and APA reporting. For academic research.

When to Use This Skill

Use when:

  • Conducting hypothesis tests (t-tests, ANOVA, chi-square)
  • Performing regression or correlation analyses
  • Running Bayesian statistical analyses
  • Checking statistical assumptions and diagnostics
  • Calculating effect sizes and conducting power analyses
  • Reporting statistical results in APA format

Core Capabilities

  1. Test selection & planning — choose tests by research question and data type; a priori power analysis; multiple-comparison strategy.
  2. Assumption checking — verify normality, homogeneity, linearity; diagnostic plots; remediation when violated.
  3. Statistical testing — parametric and non-parametric tests; regression; correlation; Bayesian alternatives with Bayes Factors.
  4. Effect sizes & interpretation — appropriate effect sizes with CIs; statistical vs. practical significance.
  5. Professional reporting — APA-style reports, publication-ready figures and tables.

Workflow

SELECT a test?      → Test Selection Guide
CHECK assumptions?  → Assumption Checking
RUN analysis?       → Running Statistical Tests + references/code_examples.md
REPORT results?     → Reporting Results + references/apa_report_templates.md

Worked code for every step is in references/code_examples.md.

Test Selection Guide

Quick reference (full decision tree: references/test_selection_guide.md):

Two groups — independent + normal → independent t-test; independent + non-normal → Mann-Whitney U; paired + normal → paired t-test; paired + non-normal → Wilcoxon signed-rank; binary outcome → chi-square or Fisher's exact.

3+ groups — independent + normal → one-way ANOVA; independent + non-normal → Kruskal-Wallis; paired + normal → repeated-measures ANOVA; paired + non-normal → Friedman.

Relationships — two continuous → Pearson (normal) or Spearman (non-normal); continuous outcome + predictors → linear regression; binary outcome + predictors → logistic regression.

Bayesian alternatives exist for all of the above, giving direct probability statements, Bayes Factors, and the ability to support the null. See references/bayesian_statistics.md.

Assumption Checking

ALWAYS check assumptions before interpreting results. Use the bundled scripts/assumption_checks.py (comprehensive_assumption_check() and targeted functions — code in references/code_examples.md). It performs outlier detection (IQR + z-score), normality testing (Shapiro-Wilk + Q-Q), homogeneity of variance (Levene + box plots), and interpretation.

When violated:

  • Normality — mild + n>30/group → proceed (robust); moderate → non-parametric; severe → transform or non-parametric.
  • Homogeneity — t-test → Welch's; ANOVA → Welch's or Brown-Forsythe; regression → robust SE or WLS.
  • Linearity (regression) — polynomial terms, transform variables, or GAM.

Detail: references/assumptions_and_diagnostics.md.

Running Statistical Tests

Primary libraries: scipy.stats (core tests), statsmodels (regression/diagnostics), pingouin (tests + effect sizes), pymc + arviz (Bayesian).

Copy-paste examples for t-test, ANOVA + post-hoc, linear regression with full diagnostics, and a Bayesian t-test: references/code_examples.md.

Effect Sizes

Effect sizes quantify magnitude; p-values only indicate existence. Always report them, with CIs. Benchmarks (guidelines only — context matters):

TestEffect SizeSmallMediumLarge
T-testCohen's d0.200.500.80
ANOVAη²_p0.010.060.14
Correlationr0.100.300.50
Regression0.020.130.26
Chi-squareCramér's V0.070.210.35

Calculation code and CI computation: references/code_examples.md. Full guidance: references/effect_sizes_and_power.md.

Power Analysis

Run a priori power analysis to size a study before collecting data, and sensitivity analysis afterward to report the smallest detectable effect. Avoid post-hoc power. Code: references/code_examples.md. Guidance: references/effect_sizes_and_power.md.

Reporting Results

Follow APA style (references/reporting_standards.md). Report descriptive statistics (M, SD, n), test statistics (name, statistic, df, exact p), effect sizes with CIs, assumption checks, and all planned analyses.

Ready-to-adapt report paragraphs for t-test, ANOVA, multiple regression, and Bayesian analysis: references/apa_report_templates.md.

Bayesian Statistics

Consider Bayesian methods when you have prior information, want direct probability statements, have small samples or sequential data, need to quantify evidence for the null, or have a complex (hierarchical, missing-data) model. Key advantages: intuitive interpretation, evidence for the null, flexibility, full uncertainty quantification. Comprehensive guide (priors, Bayes Factors, credible intervals, convergence checks): references/bayesian_statistics.md.

Best Practices

Pre-register analyses; always check assumptions; report effect sizes with CIs; report all planned analyses including non-significant ones; distinguish statistical from practical significance; visualize before and after; check regression/ANOVA diagnostics; run sensitivity analyses; share data and code; be transparent about violations and decisions.

Common Pitfalls

P-hacking; HARKing; ignoring assumptions; confusing significance with importance; not reporting effect sizes; cherry-picking results; misinterpreting p-values; uncorrected multiple comparisons; ignoring missing-data mechanism (MCAR/MAR/MNAR); overinterpreting non-significant results.

Getting Started Checklist

  • Define research question and hypotheses
  • Determine the test (references/test_selection_guide.md)
  • Power analysis for sample size
  • Load and inspect data; check missing data and outliers
  • Verify assumptions (scripts/assumption_checks.py)
  • Run primary analysis; compute effect sizes with CIs
  • Post-hoc tests if needed (with corrections)
  • Create visualizations
  • Write results (references/reporting_standards.md)
  • Sensitivity analyses; share data and code

Index of Bundled Resources

References (references/)

  • test_selection_guide.md — decision tree for choosing a test
  • assumptions_and_diagnostics.md — checking and handling violations
  • effect_sizes_and_power.md — effect sizes and power analysis
  • bayesian_statistics.md — complete Bayesian guide
  • reporting_standards.md — APA reporting rules
  • code_examples.md — worked Python for tests, diagnostics, Bayesian, power, effect sizes
  • apa_report_templates.md — ready-to-adapt APA results paragraphs

Scripts (scripts/)

  • assumption_checks.py — automated assumption checking with visualizations (comprehensive_assumption_check, check_normality, check_homogeneity_of_variance, check_linearity, detect_outliers)

Further Reading

Key textbooks: Cohen (1988), Field (2013), Gelman & Hill (2006), Kruschke (2014). Online: APA Style Guide (https://apastyle.apa.org/), Cross Validated (stats.stackexchange.com).

Signals

GitHub stars
66
Forks
13
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
alterlab-statistical-analysis
Source
github.com/alterlab-ieu/alterlab-academic-skills