Tutorials › Multivariate Statistics (Graduate) › Bootstrap Uncertainty for Rotated Loadings

Factor Rotation and Assessment · Tutorial 576 of 975

Bootstrap Uncertainty for Rotated Loadings

Build bootstrap intervals for rotated loadings using aligned refits, and distinguish sampling uncertainty from changes in factor labels.

Advanced 11 min read

What You'll Learn

  • Resample multivariate observations and refit the same factor model and rotation
  • Align bootstrap loading matrices to a reference by matching factors and correcting signs
  • Derive basic bootstrap intervals from aligned, centered loading estimates
  • Interpret loading intervals when signs or factor order vary across replicates
  • Recognize when rotational ambiguity makes coordinate-wise intervals difficult to interpret

Why Bootstrap Rotated Loadings?

A rotated loading matrix is estimated from a sample, so its entries vary from sample to sample. Bootstrap resampling gives an empirical way to assess that variation: repeatedly resample the observed cases, refit the factor model, and record the rotated loadings. There is an important complication. A factor solution can describe the same fitted structure after its columns are reordered or their signs are reversed. If those equivalent versions are compared entry by entry without first aligning them, the apparent variability can be mostly a labeling artifact.

The goal here is a set of loading intervals whose coordinates refer consistently to the same factors as a chosen reference solution. The intervals describe sampling uncertainty under the chosen model, extraction method, rotation criterion, and alignment rule. They do not remove uncertainty about the number of factors or make a particular rotation uniquely correct.

Definition: Let \(\hat{\Lambda}\) be the \(p\times q\) rotated loading matrix fitted to the original sample. A case-bootstrap replicate resamples the \(n\) observed \(p\)-dimensional cases with replacement, refits the same \(q\)-factor model and rotation procedure, and produces a replicate loading matrix \(\hat{\Lambda}^{*(b)}\). An aligned replicate is that matrix after its factors have been matched to the reference \(\hat{\Lambda}\), including any needed sign or order changes.

The Resampling and Alignment Procedure

For independent, identically distributed observational units, each bootstrap data set contains \(n\) rows sampled with replacement from the original \(n\) rows. Each row remains a complete \(p\)-variable observation. Resampling variables separately would destroy the cross-variable dependence that the factor model is intended to describe. If observations are clustered, longitudinal, or drawn under a complex sampling design, the resampling scheme must instead respect that design.

For each resample, repeat the entire estimation procedure that produced the reference solution: use the same preprocessing, factor count, extraction method, and rotation criterion. A replicate loading matrix obtained from a different procedure is not a like-for-like estimate. Then align its columns to the reference before storing individual loading estimates.

A common alignment restricts attention to signed permutations: reorder the replicate factors and multiply selected columns by \(-1\). This handles the usual sign and factor-order indeterminacies while keeping the solution in the same rotated coordinates. More general rotational differences may require a criterion-specific admissible transformation; an arbitrary matching transformation can change the target being estimated. With oblique factors, any transformation of the loadings must be accompanied by the corresponding transformation of the factor-covariance matrix.

Alignment rule: Among the allowed signed permutations, choose the one that makes the replicate loading matrix closest to the reference, for example by minimizing the squared Frobenius distance. Equivalently, match columns to maximize their total absolute cross-product. If normalized congruence coefficients are used instead, maximize the corresponding total absolute congruence, and state that choice consistently.

The equivalence follows directly. Write \(A=\hat{\Lambda}\), \(B=\hat{\Lambda}^{*}\), and let \(P\) range over signed permutation matrices. A signed permutation only reorders or changes the signs of columns, so \(\lVert BP\rVert_F^2=\lVert B\rVert_F^2\). Expanding the distance gives

$$ \lVert A-BP\rVert_F^2 =\lVert A\rVert_F^2+\lVert B\rVert_F^2 -2\operatorname{tr}(A^\mathsf{T}BP). $$

For a fixed column assignment, the trace is a sum of matched column cross-products with freely chosen signs. Choosing each sign to make its cross-product nonnegative makes that sum the sum of the absolute cross-products. Comparing assignments then selects the permutation with the largest total. Thus minimizing distance and maximizing total absolute cross-product give the same signed-permutation alignment. This argument also explains why a greedy “match each column separately” rule can fail: the best overall assignment must respect the fact that each reference column is used once.

Worked Example: Correcting Signs Before Comparing Loadings

Suppose the reference loading columns for three variables are \(\hat{\lambda}_1=(0.80,0.70,0.10)^\mathsf{T}\) and \(\hat{\lambda}_2=(0.10,0.20,0.75)^\mathsf{T}\). A replicate has columns \(c=(-0.78,-0.68,-0.12)^\mathsf{T}\) and \(d=(-0.12,-0.18,-0.72)^\mathsf{T}\). Calculate the cross-products to see which reference factors they resemble.

For \(c\), the products are

$$ c^\mathsf{T}\hat{\lambda}_1 =(-0.78)(0.80)+(-0.68)(0.70)+(-0.12)(0.10) =-0.624-0.476-0.012=-1.112, $$

and

$$ c^\mathsf{T}\hat{\lambda}_2 =(-0.78)(0.10)+(-0.68)(0.20)+(-0.12)(0.75) =-0.078-0.136-0.090=-0.304. $$

The larger absolute cross-product is with reference factor 1, so \(c\) is matched to that factor and its sign is reversed. For \(d\), the cross-product with reference factor 1 is

$$ d^\mathsf{T}\hat{\lambda}_1 =(-0.12)(0.80)+(-0.18)(0.70)+(-0.72)(0.10) =-0.096-0.126-0.072=-0.294, $$

whereas with reference factor 2 it is

$$ d^\mathsf{T}\hat{\lambda}_2 =(-0.12)(0.10)+(-0.18)(0.20)+(-0.72)(0.75) =-0.012-0.036-0.540=-0.588. $$

Thus \(d\) matches reference factor 2 and is also sign-reversed. The aligned replicate columns are \(-c\) and \(-d\), in reference order. Comparing \(c\) or \(d\) directly with positive reference columns would incorrectly treat a sign convention as a large substantive difference.

Constructing Loading Intervals

After alignment, retain the bootstrap estimate of each loading in its reference coordinate. For loading \((j,k)\), the \(b\)th aligned estimate is denoted \(\hat{\lambda}^{*(b)}_{jk,\mathrm{al}}\). The bootstrap distribution of these values can be summarized by percentiles or by centered bootstrap errors. The basic interval below makes explicit how the centered errors translate into an interval for the unknown loading.

Let \(T^{*(b)}_{jk}=\sqrt{n}(\hat{\lambda}^{*(b)}_{jk,\mathrm{al}}-\hat{\lambda}_{jk})\), and let \(c^*_{u,jk}\) be its empirical \(u\)-quantile across \(B\) replicates. A two-sided basic interval with nominal level \(1-\alpha\) is

$$ \left[ \hat{\lambda}_{jk}-\frac{c^*_{1-\alpha/2,jk}}{\sqrt{n}}, \quad \hat{\lambda}_{jk}-\frac{c^*_{\alpha/2,jk}}{\sqrt{n}} \right]. $$

The endpoints reverse the order of the error quantiles because the bootstrap error is subtracted from the observed estimate to obtain a candidate value for the parameter. A percentile interval instead uses the \(\alpha/2\) and \(1-\alpha/2\) quantiles of the aligned bootstrap estimates themselves. It is simple to report, but its first-order coverage is not guaranteed for an asymmetric sampling distribution; the basic interval has a direct justification under centered bootstrap consistency.

Theorem: Suppose the loading coordinate \(\lambda_{jk}\) is locally identified after alignment, and \(T_n=\sqrt{n}(\hat{\lambda}_{jk}-\lambda_{jk})\) has a continuous limiting distribution \(F\). Suppose also that the conditional distribution of \(T^*_{jk}=\sqrt{n}(\hat{\lambda}^{*}_{jk,\mathrm{al}}-\hat{\lambda}_{jk})\), given the data, converges in probability to \(F\), with quantiles consistently estimated at \(u=\alpha/2\) and \(u=1-\alpha/2\). If \(F\) is strictly increasing at those quantiles, the basic interval has limiting coverage \(1-\alpha\).

To verify the result, conditional quantile consistency gives \(c^*_{u,jk}\xrightarrow{p}c_u\), where \(c_u\) is the \(u\)-quantile of \(F\). The event that \(\lambda_{jk}\) lies in the displayed interval is exactly

$$ c^*_{\alpha/2,jk} \leq \sqrt{n}(\hat{\lambda}_{jk}-\lambda_{jk}) \leq c^*_{1-\alpha/2,jk}. $$

The statistic in the middle converges in distribution to \(F\), and the two random endpoints converge in probability to \(c_{\alpha/2}\) and \(c_{1-\alpha/2}\). Continuity at those endpoints therefore gives limiting coverage \(F(c_{1-\alpha/2})-F(c_{\alpha/2})=(1-\alpha/2)-(\alpha/2)=1-\alpha\). This is a first-order statement under the stated regularity and bootstrap-consistency conditions, not a guarantee for every fitted factor model. \(\square\)

Worked Example: An 80% Basic Interval

Suppose a fitted model has \(n=100\) cases and a reference loading estimate \(\hat{\lambda}_{jk}=0.60\). For illustration, take \(B=10\) aligned bootstrap estimates, sorted as \(0.42, 0.48, 0.51, 0.55, 0.58, 0.61, 0.63, 0.67, 0.70, 0.76\). Use the empirical quantile convention \(q(u)=x_{(\lceil Bu\rceil)}\), where \(x_{(r)}\) is the \(r\)th ordered value. For an 80% interval, \(\alpha=0.20\), so the relevant probabilities are \(0.10\) and \(0.90\).

The bootstrap loading quantiles are \(q^*_{0.10}=0.42\) and \(q^*_{0.90}=0.70\). The centered-error quantiles, on the \(\sqrt n\) scale, are

$$ c^*_{0.10}=\sqrt{100}(0.42-0.60)=-1.8, \qquad c^*_{0.90}=\sqrt{100}(0.70-0.60)=1.0. $$

Substitution into the basic interval gives

$$ \left[ 0.60-\frac{1.0}{10}, \quad 0.60-\frac{-1.8}{10} \right] =[0.50,0.78]. $$

The interval is not the percentile interval \([0.42,0.70]\): the basic construction reflects the observed estimate relative to the bootstrap error distribution. With only ten replicates these endpoints are deliberately coarse; practical analyses use many more resamples and report the quantile convention and the number of replicates.

Signs, Factor Order, and Oblique Solutions

The reference solution is needed because the label “factor 1” has no intrinsic meaning across independently fitted replicates. Suppose a replicate has columns in reversed order and the first column has its sign reversed. If the raw replicate is \(B=[-\hat{\lambda}_2,\hat{\lambda}_1]\), the signed permutation

$$ P= \begin{pmatrix} 0&-1\\ 1&0 \end{pmatrix} $$

gives \(BP=[\hat{\lambda}_1,\hat{\lambda}_2]\). The bootstrap records should use this aligned order and orientation before computing any loading interval. The choice of reference orientation is conventional: reversing a reference column reverses the corresponding aligned estimates and interval endpoints, but does not change the fitted covariance representation.

For oblique solutions, let \(\Phi\) denote the factor-covariance matrix. If the aligned loading matrix is \(\Lambda_{\mathrm{al}}=\Lambda P\), the corresponding covariance matrix is \(\Phi_{\mathrm{al}}=P^\mathsf{T}\Phi P\). This follows by defining the transformed factors as \(f_{\mathrm{al}}=P^\mathsf{T}f\): then \(\Lambda f=\Lambda P f_{\mathrm{al}}\), and \(\operatorname{Cov}(f_{\mathrm{al}})=P^\mathsf{T}\Phi P\). Both the loading coordinates and factor correlations must therefore be interpreted in the same aligned system.

Worked Example: Aligning an Oblique Replicate

Suppose the replicate factors have covariance matrix \(\Phi^*=\begin{pmatrix}1&0.30\\0.30&1\end{pmatrix}\), while their loading columns are \(B=[-\hat{\lambda}_2,\hat{\lambda}_1]\). The matrix \(P\) above puts the loading columns into reference order and corrects the sign. The transformed factor covariance is

$$ P^\mathsf{T}\Phi^*P = \begin{pmatrix} 0&1\\ -1&0 \end{pmatrix} \begin{pmatrix} 1&0.30\\ 0.30&1 \end{pmatrix} \begin{pmatrix} 0&-1\\ 1&0 \end{pmatrix} = \begin{pmatrix} 1&-0.30\\ -0.30&1 \end{pmatrix}. $$

The sign of the factor correlation changes because one factor orientation was reversed. That is not a change in the underlying fitted model: the loadings and factor covariance have both been transformed coherently. Reporting the aligned loadings together with the untransformed covariance matrix would combine quantities from different coordinate systems.

Interpreting the Intervals and Common Pitfalls

A loading interval summarizes uncertainty in one aligned coordinate of the selected rotated solution. An interval spanning zero indicates that this loading is not precisely separated from zero under the fitted procedure; it does not, by itself, establish that the factor is absent or that a particular variable has no relationship to the broader factor structure. Intervals for separate entries are ordinarily marginal, not simultaneous: a collection of 95% intervals does not generally provide 95% joint coverage for the entire matrix.

  • Do not interpret unaligned sign flips as sampling variability. A negative replicate column may represent the same factor with the opposite orientation. Align first, then summarize.
  • Do not assume column positions identify factors. Match columns to the reference; factor order can change across refits.
  • Do not treat any rotation as interchangeable for interval purposes. Apply the same fitting and rotation procedure, and use a defensible alignment rule that preserves the intended coordinates.
  • Do not ignore failed or inadmissible fits. Record convergence and admissibility, investigate failures, and state how any excluded replicates were handled. Quietly dropping difficult replicates can distort the reported uncertainty.
  • Do not read an interval as accounting for every source of model uncertainty. The procedure conditions on choices such as factor count and rotation criterion.

If aligned replicates still show very different loading patterns, the coordinate-wise intervals may be summarizing a mixture of substantively distinct solutions rather than a single regular sampling distribution. In that case, report the alignment rule and the observed variation, and be cautious about presenting a narrow interval as definitive. Bootstrap intervals are most interpretable when the chosen solution has a coherent, locally identifiable alignment across resamples.

Key takeaway: Refit the full model in every case bootstrap, align each rotated replicate to the reference before extracting loading coordinates, and interpret intervals as uncertainty in that chosen aligned solution—not as uncertainty-free factor labels or a complete account of model choice.

Check Your Understanding

Use these questions to check both the computations and the interpretation.

  1. Why must a case bootstrap resample complete multivariate rows rather than resample each variable independently?
  2. For a fixed assignment of replicate columns to reference columns, why does choosing each sign to make its cross-product nonnegative minimize the squared Frobenius distance?
  3. A replicate has its factors in reversed order, with one column sign-reversed. What should be done before calculating coordinate-wise loading intervals?
  4. In an oblique solution, why must the factor-covariance matrix be transformed when the loading columns are reordered or sign-changed?
  5. What additional regularity condition is needed before treating aligned bootstrap loading intervals as reliable summaries of a single solution?
Clinical Biostats