Example: Q-factor Analysis (PROXIMITIES command)

In this example, PROXIMITIES and FACTOR are used for a Q-factor analysis, in which factors account for variance shared among observations rather than among variables. Procedure FACTOR does not perform Q-factor analysis without some preliminary transformation such as what is provided by PROXIMITIES. Because the number of cases exceeds the number of variables, the model is not of full rank, and FACTOR will print a warning. This result is a common occurrence when case-by-case matrices from PROXIMITIES are used as input to FACTOR.

* Recoding a PROXIMITIES matrix for procedure FACTOR.
 
GET FILE='/data/crime.sav'.
PROXIMITIES   MURDER TO MOTOR
  /MEASURE=CORR
  /MATRIX=OUT('/data/tempfile.sav').
GET FILE='/data/tempfile.sav' /DROP=ID.
RECODE ROWTYPE_ ('PROX' = 'CORR').
FACTOR MATRIX IN(COR=*).
  • The MATRIX subcommand on PROXIMITIES writes the correlation matrix to the active dataset. Because the matrix materials will be used in procedure FACTOR, the ID subcommand is not specified.
  • RECODE recodes ROWTYPE_ value PROX to CORR so that procedure FACTOR can read the matrix.
  • When FACTOR reads matrix materials, it reads all variables in the file. The MATRIX subcommand on FACTOR indicates that the matrix is a correlation matrix and that data are in the active dataset.