Introduction
A factor model separates the variation in each observed variable into a part associated with common factors and a part specific to that variable. Two quantities summarize this separation: the communality, which measures the common-factor contribution to a variable’s variance, and the uniqueness, which measures its specific variance. These quantities are useful for understanding what a fitted factor model says about each variable, but neither should be interpreted without its assumptions and scale.
This tutorial uses the common-factor covariance decomposition. Let \(X\) be a vector of \(p\) observed variables and \(F\) a vector of \(q\) common factors. Write \(\Lambda\) for the \(p \times q\) loading matrix and \(\varepsilon\) for the vector of specific components. Assume the variables have finite second moments, and that the factors and specific components are uncorrelated. If \(\operatorname{Cov}(F)=\Phi\) and \(\operatorname{Cov}(\varepsilon)=\Psi\), then
For much of the discussion, \(\Phi=I_q\): the factors have unit variances and are mutually uncorrelated. In that case, \(\Lambda\Phi\Lambda^\top=\Lambda\Lambda^\top\). When \(\Phi\) is not the identity, the same definitions account for factor correlations. For calculations of correlations between different observed variables, we will state when the specific components have zero covariance with each other.
Definitions and the Variance Decomposition
Let \(\lambda_i^\top\) be row \(i\) of \(\Lambda\), so \(\lambda_i\) is a \(q\)-vector of loadings for observed variable \(X_i\). Let \(\psi_{ii}\) be the \(i\)th diagonal element of \(\Psi\). The common-factor contribution to \(X_i\)'s variance is the \(i\)th diagonal element of \(\Lambda\Phi\Lambda^\top\).
The notation \(h_i^2\) is conventional; it denotes a variance contribution, not the square of a loading. Because a covariance matrix is positive semidefinite, \(h_i^2\geq 0\). A specific variance is also nonnegative, since it is a variance. In the orthogonal, unit-variance factor case, the communality has the especially simple form
Thus each squared loading contributes to the communality when the factors are uncorrelated and standardized. If the factors are correlated, cross-products also matter: \(h_i^2=\lambda_i^\top\Phi\lambda_i\), not generally the sum of squared loadings.
To verify the decomposition, the \(i\)th variable can be written \(X_i=\mu_i+\lambda_i^\top F+\varepsilon_i\). Constants do not affect variance. Using the covariance of a sum and the assumed zero covariance between \(F\) and \(\varepsilon\),
Dividing this equality by the positive total variance gives \(h_i^2/\operatorname{Var}(X_i)+\psi_{ii}/\operatorname{Var}(X_i)=1\), as claimed. This is a decomposition of variance under the model, not a causal claim that changing a factor would change the observed variable by that amount. □
When observed variables are standardized to variance one, the decomposition becomes \(1=h_i^2+\psi_{ii}\). Then communality is the proportion of that variable’s variance attributed to common factors, and uniqueness is the remaining proportion. For variables on their original scales, \(h_i^2\) and \(\psi_{ii}\) are variances in squared measurement units; proportions require dividing by the total variance.
Worked Example: Communalities and Uniquenesses for Three Standardized Variables
Suppose there are two uncorrelated, unit-variance factors and three observed variables with loading rows \((0.8,0.3)\), \((0.6,-0.4)\), and \((0.2,0.7)\). Suppose the specific variances are \(0.27\), \(0.48\), and \(0.47\), and the specific components are uncorrelated with one another. Calculate the communalities, total variances, and the model-implied correlations.
Because the factors are uncorrelated and have unit variance, each communality is the sum of the two squared loadings:
Adding the respective specific variances gives \(\operatorname{Var}(X_1)=0.73+0.27=1\), \(\operatorname{Var}(X_2)=0.52+0.48=1\), and \(\operatorname{Var}(X_3)=0.53+0.47=1\). Thus the communality and uniqueness are also the common and specific proportions for each standardized variable.
For two different variables, the covariance from the common factors is the sum of the products of their loadings for each factor. Since the specific components are uncorrelated, they add no cross-covariance:
All three variances equal one, so the corresponding correlations are \(0.36\), \(0.37\), and \(-0.16\). The negative correlation for \(X_2\) and \(X_3\) is possible even though both communalities are positive: their loading patterns point in partly opposing directions.
From Communalities to Covariances and Correlations
The diagonal entries of \(\Lambda\Phi\Lambda^\top\) give communalities. Its off-diagonal entries give the covariances between observed variables attributable to the common factors. For \(i\ne j\), the full covariance is
Here \(\psi_{ij}\) is the covariance between the specific components for variables \(i\) and \(j\). In the common case where \(\Psi\) is diagonal, \(\psi_{ij}=0\) for \(i\ne j\), so the shared-factor covariance is the entire covariance. A correlation then follows by dividing by the two standard deviations:
Consequently, knowing the two communalities does not in general determine the correlation. A communality describes the length, in the factor covariance metric, of one variable’s loading vector. The shared covariance also depends on how the two loading vectors align with one another. When factors are uncorrelated and unit variance, that covariance is the ordinary inner product of the two loading vectors.
Worked Example: Variance Contributions on the Original Scale
Consider two observed variables driven by one unit-variance factor. Their loadings are \(2\) and \(-1.5\), and their specific variances are \(0.75\) and \(1.75\). Assume the specific components are uncorrelated with each other and with the factor. Find each variable’s total variance and variance proportions, and calculate their correlation.
With one unit-variance factor, the communalities are the squared loadings: \(h_1^2=2^2=4\) and \(h_2^2=(-1.5)^2=2.25\). Therefore, \(\operatorname{Var}(X_1)=4+0.75=4.75\) and \(\operatorname{Var}(X_2)=2.25+1.75=4\).
The common proportions are \(4/4.75=16/19\), approximately \(0.8421\), and \(2.25/4=0.5625\). The specific proportions are \(0.75/4.75=3/19\), approximately \(0.1579\), and \(1.75/4=0.4375\). Each pair sums to one.
The shared covariance is the product of the loadings, \(2(-1.5)=-3\). With no cross-covariance between specific components, this is also the total covariance. Hence
The communalities here are variances, not proportions: \(4\) and \(2.25\). The corresponding proportions are obtained only after dividing by the observed variances.
To prove the bound, a positive semidefinite matrix has a positive semidefinite square root \(\Phi^{1/2}\), with \(\Phi^{1/2}\Phi^{1/2}=\Phi\). Define \(a=\Phi^{1/2}\lambda_i\) and \(b=\Phi^{1/2}\lambda_j\). Then \(\lambda_i^\top\Phi\lambda_j=a^\top b\), \(\|a\|^2=\lambda_i^\top\Phi\lambda_i=h_i^2\), and \(\|b\|^2=h_j^2\). By the Cauchy–Schwarz inequality, \[ |\lambda_i^\top\Phi\lambda_j| =|a^\top b| \leq \|a\|\|b\| =\sqrt{h_i^2h_j^2}. \] This bounds only the common-factor covariance. If \(\psi_{ij}\ne 0\), total covariance also includes that specific covariance, so the same bound need not hold for the total covariance. □
Worked Example: Correlated Factors Change the Communality
Suppose two factors each have variance one and correlation \(0.5\), so \(\Phi=\begin{pmatrix}1&0.5\\0.5&1\end{pmatrix}\). Let the loading rows for two observed variables be \(\lambda_1=(0.6,0.2)\) and \(\lambda_2=(0.3,0.7)\), with specific variances \(0.48\) and \(0.21\). Assume the specific components are uncorrelated. Calculate the communalities and correlation.
For the first variable, the diagonal terms contribute \(0.6^2+0.2^2=0.40\), and the factor covariance contributes \(2(0.6)(0.2)(0.5)=0.12\). Thus \(h_1^2=0.52\). For the second, the diagonal terms contribute \(0.3^2+0.7^2=0.58\), and the covariance term contributes \(2(0.3)(0.7)(0.5)=0.21\), giving \(h_2^2=0.79\).
The total variances are \(0.52+0.48=1\) and \(0.79+0.21=1\). For the cross-covariance, first calculate \(\Phi\lambda_2^\top=(0.3+0.35,\ 0.15+0.7)^\top=(0.65,\ 0.85)^\top\). Therefore, \(\lambda_1^\top\Phi\lambda_2=0.6(0.65)+0.2(0.85)=0.39+0.17=0.56\). There is no specific cross-covariance, so the total covariance and correlation are both \(0.56\). Omitting the factor-correlation terms would give incorrect communalities and an incorrect shared covariance.
Common Mistakes and Interpretation
Communalities and uniquenesses are most useful when interpreted at the level of individual variables. They indicate how the model allocates each variable’s variance; they do not, by themselves, describe the full pattern of relationships among variables.
- Squaring loadings when factors are correlated. The sum of squared loadings gives the communality only when \(\Phi=I_q\). Otherwise use \(\lambda_i^\top\Phi\lambda_i\), including the cross-product terms.
- Calling the communality a proportion in every model. It is a variance contribution. It equals a proportion only for a standardized variable, or after dividing by the total variance.
- Assuming two high communalities imply a high correlation. Two variables can have large communalities but load in different or opposing directions. Their shared covariance depends on \(\lambda_i^\top\Phi\lambda_j\), not only on \(h_i^2\) and \(h_j^2\).
- Ignoring specific cross-covariance. The expression for total covariance includes \(\psi_{ij}\). It reduces to shared-factor covariance alone only when the specific components for those two variables have zero covariance.
- Treating a variance decomposition as a causal explanation. The model assigns covariance to common and specific components; that mathematical allocation alone does not establish causal effects.
Check Your Understanding
Use the model assumptions in each question, and distinguish variances from proportions.
- With two uncorrelated unit-variance factors and loading row \((0.5,-0.4)\), calculate the communality.
- A variable has communality \(0.64\) and uniqueness \(0.36\). What is its total variance, and what proportion is common?
- Explain why two variables can each have communality \(0.8\) without having correlation \(0.8\).
- For correlated factors, what matrix expression replaces the sum of squared loadings when calculating a communality?
- Under what condition does the shared-factor covariance equal the full covariance between two distinct observed variables?