The HPPRINCOMP Procedure

NIPALS

The nonlinear iterative partial least squares (NIPALS) method extracts the principal components successively based on the data matrix $\mb{X}$. The NIPALS method starts by calculating the loadings, $\mb{p}$, as $\mb{p}’=(\mb{t}’\mb{t})^{-1}\mb{t}’\mb{X}$, where $\mb{t}$ is the score vector. It then calculates an improved score vector, $\mb{t}=\mb{X}\mb{p}$. The method iteratively computes the improved $\mb{p}$ and $\mb{t}$ until convergence is reached.

This process accounts for how the first principal component is extracted. The second component is extracted in the same way, by replacing $\mb{X}$ with the residual from the first component: $\mb{E}=\mb{X}-\mb{t}\mb{p}’$.

For large data matrices or matrices that have a high degree of column collinearity, the NIPALS method suffers from loss of orthogonality because of the machine-precision errors that accumulate at each iteration step. In practice, the NIPALS method is used to extract only the first few principal components.