ANOVA calculator

Two-way factorial ANOVA calculator

Analyze main effects of two independent factors and their interaction effect on a continuous outcome variable, including F-statistics, partial Eta-squared (ηₚ²), and interaction plots.

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

When to use it

Use when testing two categorical independent variables simultaneously to check for main and interaction effects.

Required Inputs

  • Factor A levels
  • Factor B levels
  • Outcome numeric values
  • Alpha level

Mathematical Formula

SS_total = SS_A + SS_B + SS_AB + SS_error, F_A = MS_A / MS_error, F_AB = MS_AB / MS_error

Reporting Cautions

  • If interaction effect is statistically significant, interpret main effects with caution.
  • Balanced design (equal sample sizes per cell) simplifies Type II / Type III sum of squares calculation.

Code Snippets (Python, R, TypeScript)

Python (SciPy / Statsmodels)
import statsmodels.api as sm
from statsmodels.formula.api import ols
model = ols('latency ~ C(cache) * C(region)', data=df).fit()
anova_table = sm.stats.anova_lm(model, typ=2)
R Language
res <- aov(latency ~ cache * region, data = df)
summary(res)
TypeScript (@statlab/core)
import { anovaTwoWay } from '@statlab/core';
const result = anovaTwoWay(data, 'cache', 'region', 'latency');

Developer Use Cases & Production Integrations

  • Evaluating the combined impact of cache settings and geographic regions on latency in VoxelPulse.
  • Testing LLM prompt architecture and model family interaction on execution quality in VoxelAssurance.

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.