FRVAR

 


   more...

Computes the factor structure and the variance explained by each factor.

Required Arguments

ANVAR by NF matrix of unrotated factor loadings. (Input)

TNF by NF factor rotation matrix. (Input)

VAR — Vector of length NVAR containing the variances of the original variables. (Input)
If standardized variables were used (i.e., the loadings are from a correlation matrix), then set VAR(1) to any negative number. In this case, VAR may be dimensioned of length one.

SNVAR by NF factor structure matrix. (Output)

FVAR — Vector of length NF containing the variance accounted for by each of the NF rotated factors. (Output)

Optional Arguments

NVAR — Number of variables. (Input)
Default: NVAR = size (A,1).

NF — Number of factors. (Input)
Default: NF = size (A,2).

LDA — Leading dimension of A exactly as specified in the dimension statement in the calling program. (Input)
Default: LDA = size (A,1).

LDT — Leading dimension of T exactly as specified in the dimension statement in the calling program. (Input)
Default: LDT = size (T,1).

LDS — Leading dimension of S exactly as specified in the dimension statement in the calling program. (Input)
Default: LDS = size (S,1).

FORTRAN 90 Interface

Generic: CALL FRVAR (A, T, VAR, S, FVAR [])

Specific: The specific interface names are S_FRVAR and D_FRVAR.

FORTRAN 77 Interface

Single: CALL FRVAR (NVAR, NF, A, LDA, T, LDT, VAR, S, LDS, FVAR)

Double: The double precision name is DFRVAR.

Description

Routine FRVAR computes the factor structure matrix (the matrix of correlations between the observed variables and the hypothesized factors) and the variance explained by each of the factors (for orthogonal rotations). For oblique rotations, FRVAR computes a measure of the importance of the factors, the sum of the squared elements in each column.

Let Δ denote the diagonal matrix containing the elements of the vector VAR along its diagonal. The estimated factor structure matrix S is computed as

 

while the elements of FVAR are computed as the diagonal elements of

 

If the factors were obtained from a correlation matrix (or the factor variances for standardized variables are desired), then the elements of the vector VAR should either all be 1.0, or the first element of VAR should be set to any negative number. In either case, variances of 1.0 are used.

The user should be careful to input the unrotated loadings. When obliquely rotated loadings are input, the output vector FVAR contains a measure of each factors importance, but it does not contain the variance of each factor.

Comments

Workspace may be explicitly provided, if desired, by use of F2VAR/DF2VAR. The reference is

CALL F2VAR (NVAR, NF, A, LDA, T, LDT, VAR, S, LDS, FVAR, TINV, WK, IWK)

The additional arguments are as follows:

TINV — Work vector of length NF2.

WK — Work vector of NF * (1 + NVAR).

IWK — Work vector of length NF.

Example

The following example illustrates the use of routine FRVAR when the structure and an index of factor importance for obliquely rotated loadings (obtained from routine FDOBL) are desired. Note in this example that the elements of FVAR are not variances since the rotation is oblique.

 

USE FRVAR_INT

USE WRRRN_INT

 

IMPLICIT NONE

INTEGER LDA, LDS, LDT, NF, NVAR

PARAMETER (LDA=9, LDS=9, LDT=3, NF=3, NVAR=9)

!

REAL A(LDA,NF), FVAR(NF), S(LDS,NF), T(LDT,NF), VAR(NVAR)

!

DATA A/.6642, .6888, .4926, .8372, .7050, .8187, .6615, .4579, &

.7657, -.3209, -.2471, -.3022, .2924, .3148, .3767, -.3960, &

-.2955, -.4274, .0735, -.1933, -.2224, -.0354, -.1528, .1045, &

-.0778, .4914, -.0117/

!

DATA T/0.611, 0.923, 0.042, -0.462, 0.813, 0.728, 0.203, -0.249, &

1.050/

!

DATA VAR/9*1.0/

!

CALL FRVAR (A, T, VAR, S, FVAR)

!

CALL WRRRN ('S', S)

CALL WRRRN ('FVAR', FVAR, 1, NF, 1)

END

Output

 

S

1 2 3

1 0.3958 -0.6825 0.5274

2 0.4662 -0.7385 0.3093

3 0.2715 -0.6171 0.2052

4 0.8673 -0.5328 0.3010

5 0.7712 -0.4473 0.1338

6 0.8897 -0.4348 0.3654

7 0.3606 -0.7618 0.4397

8 0.2160 -0.3860 0.7270

9 0.4303 -0.8437 0.5566

 

FVAR

1 2 3

2.170 2.559 0.915