ANOVA calculator

Repeated measures ANOVA calculator

Compare means across 3+ repeated measurements on the same subjects or systems, with Greenhouse-Geisser and Huynh-Feldt sphericity corrections, F-statistic, and partial Eta-squared.

Run this test live in StatLab npm i @statlab/core

When to use it

Use when measuring the same subjects or technical endpoints across 3 or more conditions.

Required Inputs

  • Repeated condition columns (Condition 1, 2, 3...)
  • Subject / System IDs
  • Sphericity correction choice

Mathematical Formula

F = MS_condition / MS_error, df_adjusted = ε * df

Reporting Cautions

  • Check Mauchly’s test for sphericity; apply Greenhouse-Geisser correction if violated.
  • Missing data points across repeated conditions require mixed-effects model approaches.

Code Snippets (Python, R, TypeScript)

Python (SciPy / Statsmodels)
import pingouin as pg
res = pg.rm_anova(dv='latency', within='time', subject='endpoint_id', data=df)
print(res)
R Language
res <- aov(latency ~ time + Error(endpoint_id/time), data = df)
summary(res)
TypeScript (@statlab/core)
import { rmAnova } from '@statlab/core';
const result = rmAnova(data, { subjectCol: 'id', withinCol: 'time', valueCol: 'val' });

Developer Use Cases & Production Integrations

  • Tracking server latency profiles across 3+ sequential traffic load steps.
  • Evaluating continuous telemetry performance across 5 sequential releases in VoxelPulse.

VoxelPulse Telemetry Control Plane

Continuous A/B testing, statistical telemetry analysis, and automated feedback loops for live backend services.

Explore VoxelPulse →

VoxelAssurance Release Readiness

Fixed-price AI release-readiness sprints, automated regression testing, and reliability statistical benchmarks.

Explore VoxelAssurance →

Related Statistical Test Calculators

Explore static calculators across the StatLab inference engine suite.