The Fisher z-Transformation and Correlation Inference
Sample correlation coefficients don't follow a normal distribution, especially near ±1, which breaks ordinary confidence intervals and significance tests — the Fisher z-transformation fixes this by mapping correlation onto a scale where normal-theory statistics actually apply.
Prerequisites: Correlation, Confidence Intervals
You compute a sample correlation of 0.85 between two factors from 40 months of data and want a 95% confidence interval around it. The naive approach — take the standard error of a correlation estimate and go plus-or-minus two standard errors — breaks down badly here, because it can produce an interval extending past 1.0, which is impossible for a correlation coefficient. The problem is that the sampling distribution of a correlation estimate is skewed and bounded between −1 and 1, especially once the true correlation is far from zero, so ordinary normal-based confidence intervals simply don't apply. The Fisher z-transformation fixes this by warping the correlation scale into one where normal-theory statistics finally work correctly.
An analogy: stretching a map near the poles
A flat map of the globe badly distorts distances near the poles — Greenland looks the size of Africa on a standard Mercator projection because the projection stretches areas near the edges of its range. Correlation coefficients have the same problem: near 0, small changes in the true correlation produce roughly symmetric, well-behaved sampling variation, but near ±1, the same true difference gets compressed into a tiny sliver of the [−1, 1] range, and the sampling distribution becomes badly skewed. The Fisher z-transformation is like re-projecting the map onto a scale — from −∞ to +∞ instead of −1 to 1 — where the distortion near the edges disappears and distances (i.e., statistical variability) behave uniformly everywhere.
The mechanics, one piece at a time
Given a sample correlation , the Fisher z-transformation is
In plain English: this is the inverse hyperbolic tangent function, which takes any value between −1 and 1 and stretches it out to cover the entire real number line, with the stretching becoming more extreme the closer gets to ±1 — exactly compensating for how compressed the correlation scale becomes out there. The transformed variable is then, to a very good approximation, normally distributed with standard error
where is the sample size. In plain English: once you're on the -scale, the usual "mean plus-or-minus 1.96 standard errors" recipe for a 95% confidence interval works correctly, because doesn't have the boundary problem does. To get back a confidence interval for itself, compute the interval in -space and then transform each endpoint back with .
Worked example 1: a confidence interval for r = 0.85, n = 40
. Standard error: . A 95% interval in -space: , giving . Transforming back: and . So the 95% confidence interval for the true correlation is roughly — notably asymmetric around 0.85 (wider below than above), correctly reflecting that correlation has more room to vary downward from 0.85 than upward toward the hard boundary of 1.0. A naive symmetric interval using the raw correlation's standard error would have missed this asymmetry and risked an interval poking past 1.0.
Worked example 2: testing whether two correlations differ
Two backtests, on different universes, give sample correlations (n=50) and (n=45) between a signal and forward returns. Is the difference statistically meaningful? Transform both: , . The standard error of the difference is . The z-statistic for the difference is , below the 1.96 threshold for significance at the 5% level — despite the correlations looking meaningfully different (0.60 vs 0.40), the sample sizes aren't large enough to rule out that this gap is sampling noise.
What this means in practice
Any time you report a confidence interval or a hypothesis test on a correlation coefficient — factor correlations, strategy return correlations, signal-to-outcome correlations — the Fisher z-transformation is the standard, correct way to do it, especially for smaller samples or correlations far from zero where the naive approach visibly breaks. It's also the standard way to test whether two correlations (from different samples, periods, or universes) differ significantly, as in worked example 2.
The Fisher z-transformation, , maps a sample correlation onto a scale where the sampling distribution is approximately normal with a simple standard error of , fixing the skew and boundary problems that make ordinary confidence intervals invalid on the raw correlation scale, especially when is large or is small.
It's tempting to build a symmetric confidence interval directly around a raw sample correlation using a generic standard-error formula — this can produce nonsensical intervals that extend past ±1, and it silently understates uncertainty near the boundaries where the true sampling distribution is most skewed. Always transform to , build the interval there, and transform back; never treat the correlation scale itself as approximately normal, no matter how large your sample is when is close to 1.
Related concepts
Practice in interviews
Further reading
- Fisher, On the Probable Error of a Coefficient of Correlation, Metron (1921)