Why Compare Eigenvalues With a Null Distribution?
An observed correlation matrix can have a leading eigenvalue substantially greater than 1 even when the population variables are unrelated. Sampling variation creates apparent correlations, and principal components collect those fluctuations into ordered eigenvalues. A rule that retains every observed eigenvalue above 1 therefore does not, by itself, distinguish signal from sampling noise.
Parallel analysis addresses this problem by asking how large the ordered eigenvalues would typically be in data with the same sample size and number of variables, but generated under a specified null model with no shared association. The observed and simulated eigenvalues are then compared rank by rank. The result is a data-dependent reference, not a universal numerical cutoff.
Setting Up the Analysis
Let \(n\) be the number of observations and \(p\) the number of variables. For a correlation-matrix analysis, write the observed ordered eigenvalues as \(\lambda_1 \geq \lambda_2 \geq \cdots \geq \lambda_p\). For each of \(B\) simulated data sets, generate \(n\) rows and \(p\) variables under the null, apply the same centering and standardization used for the observed data, and calculate ordered eigenvalues \(\lambda^{(b)}_1 \geq \cdots \geq \lambda^{(b)}_p\), \(b=1,\ldots,B\).
A common null generates independent standard normal variables. This is a zero-correlation null with a fully specified distribution. Another option independently permutes the observed values within each variable. That preserves each variable’s empirical marginal distribution while breaking the row-wise associations between variables. These procedures answer somewhat different questions: one uses a parametric normal reference, while the other conditions on the observed marginal values. The choice should reflect the data and the intended null.
For each rank \(j\), summarize the simulated eigenvalues \(\lambda^{(1)}_j,\ldots,\lambda^{(B)}_j\). Two familiar reference rules compare the observed value with either the simulated mean or a chosen upper percentile, often the 95th percentile. A percentile rule is more conservative than a mean rule when the upper tail of the null eigenvalue distribution is appreciably above its mean. The percentile is a convention for a decision rule; it does not make the selected count certain or establish that a factor model is correct.
The simulation must mirror the analysis. If the observed eigenvalues come from a correlation matrix, simulated data must be converted to correlation matrices too. If a common-factor extraction method produces the eigenvalues of a reduced correlation matrix, its simulated counterpart must use the same extraction and reduction procedure. The familiar version based on eigenvalues of the full correlation matrix is principally a component-retention analysis. It can inform factor-number selection, but its eigenvalues are not automatically the eigenvalues of a common-factor model.
Worked Example: Retaining Factors With a 95th-Percentile Rule
Suppose \(n=200\) observations on \(p=6\) standardized variables produce observed correlation-matrix eigenvalues \(2.31, 1.44, 1.08, 0.52, 0.38, 0.27\). Their sum is \(6.00\), as required for a correlation matrix with six variables. After \(B=1{,}000\) independent-normal simulations, suppose the rank-specific 95th-percentile reference values are \(1.28, 1.20, 1.13, 1.07, 1.02, 0.96\).
At rank 1, \(2.31>1.28\), so the first observed eigenvalue exceeds its simulated reference. At rank 2, \(1.44>1.20\), so the second also exceeds its reference. At rank 3, \(1.08<1.13\), so the observed eigenvalue does not exceed the reference. Under the usual sequential rule, stop at that first failure and select two.
The comparison is rank-specific: the third observed eigenvalue is compared with \(1.13\), not with the first-rank cutoff \(1.28\) or with 1. The conclusion is conditional on the chosen null and the 95th-percentile rule; it is not a proof that precisely two substantive factors exist.
Mean and Percentile Rules Can Disagree
The two reference rules embody different thresholds. The mean asks whether an observed eigenvalue is larger than the average null eigenvalue at that rank. The percentile asks whether it is larger than a higher point in the null distribution. For a skewed null distribution, a value can exceed the mean while remaining below the 95th percentile.
Worked Example: A Different Count Under Two Reference Rules
Suppose four observed correlation eigenvalues are \(1.71, 1.16, 0.70, 0.43\), which sum to \(4.00\). Simulations with the same \(n\) and \(p=4\) give rank-specific null means \(1.30, 1.10, 0.88, 0.72\) and 95th percentiles \(1.45, 1.20, 1.00, 0.85\).
Using the mean rule, rank 1 passes because \(1.71>1.30\), and rank 2 passes because \(1.16>1.10\). Rank 3 fails because \(0.70<0.88\), so this rule selects two. Using the percentile rule, rank 1 passes because \(1.71>1.45\), but rank 2 fails because \(1.16<1.20\). That rule selects one.
Neither arithmetic nor simulation is inconsistent: the rules use different reference values. Reporting the null-generation method and the reference rule is essential to interpreting the result.
What the Simulation Calibrates
For a sample correlation matrix, each diagonal entry is 1, so its trace is \(p\). Since the trace equals the sum of the eigenvalues, the observed eigenvalues sum to \(p\). The same is true for each simulated correlation matrix. This does not mean that every rank-specific null mean equals 1: eigenvalues are ordered, and the largest tend to be above 1 while the smallest tend to be below 1.
To verify the result, the trace of a matrix is the sum of its diagonal entries. For a correlation matrix each diagonal entry is 1, hence \(\operatorname{tr}(R)=p\). The trace also equals the sum of the eigenvalues, with multiplicity, so \(\sum_{j=1}^p\lambda_j=\operatorname{tr}(R)=p\). Dividing by \(p\) gives an average eigenvalue of 1. This identity explains why the fixed cutoff 1 ignores the rank-specific sampling behavior that parallel analysis estimates. \(\square\)
There is also a precise Monte Carlo interpretation for a single rank-specific comparison under a fully specified null. Suppose the observed data and \(B\) simulated data sets are independent draws from the same null distribution, and let \(T\) be the eigenvalue at a fixed rank. If ties have probability zero, the observed value’s rank among the \(B+1\) values is uniform. Thus the Monte Carlo upper-tail value \(p_{\mathrm{MC}} = (1+\#\{b:T^{(b)}\geq T_{\mathrm{obs}}\})/(B+1)\) is valid under that null. With ties, counting simulated values at least as large gives a conservative value.
This rank argument follows from exchangeability: under the null, the \(B+1\) values have the same joint distribution after any permutation of their labels. With no ties, each label is therefore equally likely to occupy any of the \(B+1\) ranks. The fraction of ranks at least as extreme as the observed one has the corresponding discrete upper-tail distribution. Counting ties as at least as extreme can only increase that tail fraction, making the result conservative. \(\square\)
A percentile cutoff approximates this kind of rank-specific tail comparison, but ordinary parallel analysis usually makes several ordered comparisons and then reports a count. Those comparisons are dependent because they come from the same eigenvalue sequence. A 95th-percentile threshold at each rank should not be interpreted as a guarantee that the overall chance of retaining any null component is exactly 5 percent.
Worked Example: Matching the Null to Skewed Margins
Suppose four standardized, strongly skewed variables produce observed correlation eigenvalues \(1.52, 1.19, 0.79, 0.50\). These sum to \(4.00\). For illustration, assume \(B=1{,}000\) simulations produce the following rank-specific 95th-percentile cutoffs:
| Simulation null | Rank 1 | Rank 2 | Rank 3 | Rank 4 |
|---|---|---|---|---|
| Independent normal variables | 1.44 | 1.20 | 0.98 | 0.80 |
| Independent within-variable permutations | 1.57 | 1.24 | 1.00 | 0.79 |
Under the independent-normal null, the first rank passes because \(1.52>1.44\), while the second fails because \(1.19<1.20\). The sequential rule selects one. Under the permutation null, the first rank fails because \(1.52<1.57\), so the rule selects zero. The difference arises because the simulated references differ, not because the observed eigenvalues changed.
This example illustrates why the null model matters when marginal distributions are far from normal. It does not establish that permutation simulation is always preferable: it preserves the observed marginal values, which may themselves be unrepresentative of a target population. The null should be chosen and justified in the context of the analysis.
Limits and Common Pitfalls
Parallel analysis is a selection aid, not a complete factor-analysis assessment. Its output depends on the variables included, sample size, standardization, null-generation mechanism, extraction method, simulation count, and reference rule. It does not demonstrate that the retained dimensions have a useful substantive interpretation, nor does it replace checking whether a fitted model is adequate.
- Using the cutoff 1 as if it were a simulated null. The mean eigenvalue is 1 for a correlation matrix, but ordered null eigenvalues vary by rank. Compare each observed rank with the reference for that same rank.
- Simulating the wrong analysis. Do not compare observed correlation eigenvalues with covariance eigenvalues from simulated data. Match the matrix, preprocessing, and extraction method.
- Treating a percentile rule as a universal test. A rank-specific percentile comparison does not automatically control error across the entire sequence or identify a uniquely correct factor count.
- Ignoring the distinction between components and common factors. Full correlation-matrix eigenvalues describe principal components. Common-factor eigenvalues arise from a different construction, so the simulation procedure must match the intended analysis.
- Overinterpreting a borderline comparison. When an observed eigenvalue lies close to its simulated reference, modest changes in the null model or Monte Carlo results may change the selected count.
The practical value of parallel analysis is that it calibrates eigenvalue size against finite-sample noise rather than relying on a fixed threshold. Its strength is also its limitation: the benchmark is meaningful only to the extent that the simulated null represents the noise process relevant to the data.
Check Your Understanding
Answer these questions using the definitions and examples above.
- Why can the largest eigenvalue of a sample correlation matrix exceed 1 when the population variables are unrelated?
- In a rank-by-rank comparison, which simulated reference should be used for the observed third eigenvalue?
- How can the mean rule and the 95th-percentile rule select different counts from the same observed eigenvalues?
- Why should a common-factor version of parallel analysis reproduce the common-factor extraction method in its simulations?
- What does a rank-specific Monte Carlo upper-tail value establish under its null, and why does it not automatically control decisions across all ranks?