Complexity
Complexity represents the number of latent components needed to account
for the observed variables. Whereas a perfect simple structure solution
has a complexity of 1 in that each item would only load on one factor,
a solution with evenly distributed items has a complexity greater than 1
(Hofman, 1978; Pettersson and Turkheimer, 2010) .
Uniqueness
Uniqueness represents the variance that is 'unique' to the variable and
not shared with other variables. It is equal to 1 <U+2013> communality
(variance that is shared with other variables). A uniqueness of 0.20
suggests that 20% or that variable's variance is not shared with other
variables in the overall factor model. The greater 'uniqueness' the lower
the relevance of the variable in the factor model.
MSA
MSA represents the Kaiser-Meyer-Olkin Measure of Sampling Adequacy
(Kaiser and Rice, 1974) for each item. It indicates whether there
is enough data for each factor give reliable results for the PCA. The
value should be > 0.6, and desirable values are > 0.8
(Tabachnick and Fidell, 2013).
PCA or FA?
There is a simplified rule of thumb that may help do decide whether to run
a factor analysis or a principal component analysis:
Run factor analysis if you assume or wish to test a theoretical model of latent factors causing observed variables.
Run principal component analysis If you want to simply reduce your correlated observed variables to a smaller set of important independent composite variables.
(Source: CrossValidated)
Computing Item Scores
Use get_scores
to compute scores for the "subscales" represented
by the extracted principal components. get_scores()
takes the results
from principal_components()
and extracts the variables for each
component found by the PCA. Then, for each of these "subscales", row means
are calculated (which equals adding up the single items and dividing by
the number of items). This results in a sum score for each component from
the PCA, which is on the same scale as the original, single items that were
used to compute the PCA.
One can also use predict()
to back-predict scores for each component,
to which one can provide newdata
or a vector of names
for the
components.