rotationsDF {GPArotateDF}R Documentation

Rotations

Description

Optimize factor loading rotation objective.

Usage

	cubimax.df(A, Tmat=diag(ncol(A)), normalize=FALSE, eps=1e-5, maxit=1000)
	fssQ.df(A, Tmat=diag(ncol(A)), kij=2, normalize=FALSE, eps=1e-5, maxit=1000)
	fssT.df(A, Tmat=diag(ncol(A)), kij=2, normalize=FALSE, eps=1e-5, maxit=1000)

Arguments

A

an initial factor loadings matrix to be rotated.

Tmat

initial rotation matrix.

kij

minimum additional number of forced simple structure loadings in a pair of factors.

normalize

parameter passed to optimization routine (GPForth.df or GPFoblq.df).

eps

parameter passed to optimization routine (GPForth.df or GPFoblq.df).

maxit

parameter passed to optimization routine (GPForth.df or GPFoblq.df).

Details

The functions listed here optimize a rotation objective. They can be used directly or the function name can be passed to factor analysis functions like factanal.

Available rotations are

cubimax.df orthogonal Cubimax
fssQ.df oblique Forced Simple Structure (see Vignette)
fssT.df orthogonal Forced Simple Structure (see Vignette)

The argument kij for Forced Simple Structure is the minimum number of forced simple structure loadings in a pair of factors, in addition to the number of factors itself. Meaningful values are integers (1, ..., items - factors )

Value

A list (which includes elements used by factanal) with:

loadings

Lh from GPForth.df or GPFoblq.df.

Th

Th from GPForth.df or GPFoblq.df.

Table

Table from GPForth.df or GPFoblq.df.

method

A string indicating the rotation objective function.

orthogonal

A logical indicating if the rotation is orthogonal.

convergence

Convergence indicator from GPForth.df or GPFoblq.df.

Phi

t(Th) %*% Th. The covariance matrix of the rotated factors. This will be the identity matrix for orthogonal rotations so is omitted (NULL) for the result from GPForth.df.

Author(s)

Coen A. Bernaards and Robert I. Jennrich

References

Bernaards, C.A. and Jennrich, R.I. (2005) Gradient Projection Algorithms and Software for Arbitrary Rotation Criteria in Factor Analysis. Educational and Psychological Measurement, 65, 676–696.

Jennrich, R.I. (2004) Derivative free gradient projection algorithms for rotation, Psychometrika, 69(3), 475–480.

See Also

GPForth.df, GPFoblq.df, ff.cubimax, ff.fss, factanal

Examples

  data(ability.cov)
  x <- factanal(factors = 3, covmat = ability.cov, rotation="none")
  fssT.df(x$loadings, kij = 2)
  fssQ.df(x$loadings, kij = 4)

  # 3 different methods
  data("WansbeekMeijer", package="GPArotation")
  fa.unrotated  <- factanal(factors = 3, covmat=NetherlandsTV, rotation="none")
  #
  fa.varimax <- GPForth.df(loadings(fa.unrotated), method = "varimax", normalize = TRUE)
  fa.cubimax <- cubimax.df(loadings(fa.unrotated), normalize = TRUE)
  fa.quartimax <- GPForth.df(loadings(fa.unrotated), method = "quartimax", normalize = TRUE)
  print(cbind(loadings(fa.varimax), loadings(fa.cubimax), loadings(fa.quartimax)), digits = 2)   
  

[Package GPArotateDF version 2023.11-1 Index]