principalAxis function

Principal Axis Analysis

Principal Axis Analysis

The PrincipalAxis function returns a principal axis analysis without iterated communalities estimates. Three different choices of communalities estimates are given: maximum corelation, multiple correlation or estimates based on the sum of the squared principal component analysis loadings. Generally statistical packages initialize the the communalities at the multiple correlation value (usual inverse or generalized inverse). Unfortunately, this strategy cannot deal with singular correlation or covariance matrices. If a generalized inverse, the maximum correlation or the estimated communalities based on the sum of loading are used instead, then a solution can be computed.

principalAxis(R, nFactors = 2, communalities = "component")

Arguments

  • R: numeric: correlation or covariance matrix
  • nFactors: numeric: number of factors to retain
  • communalities: character: initial values for communalities ("component", "maxr", "ginv" or "multiple")

Returns

  • values: numeric: variance of each component/factor

  • varExplained: numeric: variance explained by each component/factor

  • varExplained: numeric: cumulative variance explained by each component/factor - loadings: numeric: loadings of each variable on each component/factor

Examples

# ....................................................... # Example from Kim and Mueller (1978, p. 10) # Population: upper diagonal # Simulated sample: lower diagnonal R <- matrix(c( 1.000, .6008, .4984, .1920, .1959, .3466, .5600, 1.000, .4749, .2196, .1912, .2979, .4800, .4200, 1.000, .2079, .2010, .2445, .2240, .1960, .1680, 1.000, .4334, .3197, .1920, .1680, .1440, .4200, 1.000, .4207, .1600, .1400, .1200, .3500, .3000, 1.000), nrow=6, byrow=TRUE) # Factor analysis: Principal axis factoring # without iterated communalities - # Kim and Mueller (1978, p. 21) # Replace upper diagonal with lower diagonal RU <- diagReplace(R, upper=TRUE) principalAxis(RU, nFactors=2, communalities="component") principalAxis(RU, nFactors=2, communalities="maxr") principalAxis(RU, nFactors=2, communalities="multiple") # Replace lower diagonal with upper diagonal RL <- diagReplace(R, upper=FALSE) principalAxis(RL, nFactors=2, communalities="component") principalAxis(RL, nFactors=2, communalities="maxr") principalAxis(RL, nFactors=2, communalities="multiple") # .......................................................

References

Kim, J.-O. and Mueller, C. W. (1978). Introduction to factor analysis. What it is and how to do it. Beverly Hills, CA: Sage.

Kim, J.-O. and Mueller, C. W. (1987). Factor analysis. Statistical methods and practical issues. Beverly Hills, CA: Sage.

See Also

componentAxis, iterativePrincipalAxis, rRecovery

Author(s)

Gilles Raiche

Centre sur les Applications des Modeles de Reponses aux Items (CAMRI)

Universite du Quebec a Montreal

raiche.gilles@uqam.ca

  • Maintainer: Gilles Raiche
  • License: GPL (>= 3.5.0)
  • Last published: 2022-10-10

Useful links