Statistics.OrthogonalRotation Method

function OrthogonalRotation(const X: TMtx; const Y: TMtx; const R: TMtx; const Gamma: Double; const Normalize: Boolean; const Tolerance: Double; const MaxIter: Integer): Boolean;

Orthogonal rotation of matrix.

#NameDescription
1XDefines original matrix (to be rotated).
2YStores rotated matrix (X*R, where R is calculated rotation matrix).
3GammaDefines different types of Varimax rotation (see above).
4NormalizeIf true, X matrix is normalized (by rows) prior to rotation. After the rotation the result is then renormalized.
5ToleranceConvergence tolerance in iteration algorithm.
6MaxIterMaximum number of rotations. Together with Tolerance parameter it defines convergence criteria.
7RReturns the rotation matrix, used for calculating Y=X*R.

Returns: Boolean - true, if number of rotation did not exceed maximum number of iterations for rotation.

Remarks:

Performs orthogonal rotation of X matrix. Based on the Gamma parameter value, the following rotations can be performed:

  • Gamma = 1 => Varimax rotation
  • Gamma <> 1 => Orthomax rotation
  • Gamma = X.Cols div 2 => Equimax rotation
  • Gamma = 0 => Quartimax rotation
See Also: Statistics.PCA