Describe › Normality

D'Agostino–Pearson K² test

D'Agostino–Pearson K² test combines sample skewness and kurtosis into a single omnibus normality test.

What is D'Agostino–Pearson K² test?

Most normality tests are silent on why a sample is non-normal. D'Agostino–Pearson decomposes the question into two interpretable directions: skewness (Z₁²) and kurtosis (Z₂²). The combined statistic K² = Z₁² + Z₂² is asymptotically chi-square with 2 df, so a significant K² with a large Z₁² says "the problem is skew" and a large Z₂² says "the problem is heavy tails".

Power is lower than Shapiro–Wilk against generic alternatives, but D'Agostino–Pearson is uniquely useful when you want to localise the departure for diagnostic purposes — should I log-transform (skew) or use a robust estimator (tails)?

When should I use D'Agostino–Pearson K² test?

  • When you want to know whether non-normality is driven by skewness, kurtosis, or both.
  • After a Shapiro–Wilk rejection, to decide on a remedy (transform vs robust method).

What data does it need?

One numeric column (n ≥ 20 strongly recommended for the asymptotic approximation).

What does it report?

K² statistic, df = 2, p-value. Component statistics for skew and kurtosis are exposed in the result panel.

What does it assume?

  • Independent observations.
  • Continuous data.
  • n ≥ 20 for the asymptotic chi-square approximation.

Formula

K² = Z₁²(skew) + Z₂²(kurt) ∼ χ²₂ under H₀

How do I interpret the result?

A significant K² with Z₁² ≫ Z₂² ⇒ skew dominates ⇒ consider a log / sqrt / Box-Cox transformation.

A significant K² with Z₂² ≫ Z₁² ⇒ heavy tails dominate ⇒ consider trimmed means (Yuen's test) or robust regression.

See also

References

  • D'Agostino & Pearson (1973). Tests for departure from normality. Biometrika 60(3).