Sei sulla pagina 1di 70

Factor_analysis_dummies.

doc

FACTOR ANALYSIS FOR DUMMIES


http://www.unibg.it/dati/corsi/64023/38353-Analisi%20fattoriale.pdf (prof. Caso)

L’analisi fattoriale permette di rappresentare un set di variabili tramite un insieme più compatto di nuove
covariate fra loro “indipendenti” (fattori).

Ogni fattore sarà composto da gruppi di variabili fra loro correlate, e idealmente indipendenti dagli altri set
di variabili rappresentate negli altri fattori.

Ansioso Agitato
Instabilità
Emotiva
Nervoso
ato

Puntuale Meticoloso
so Coscienziosità

Coscienzioso
vosoitato

Analisi Fattoriale e TEST

 Moltissimi test sono sviluppati proprio a partire di studi basati sull’analisi fattoriale.
 L’analisi fattoriale permette di indagare o verificare se la struttura teorica di un test corrisponde a
quella empiricamente raggiunta.
 Quest’analisi è quindi centrale per la dimostrazione della validità del costrutto di un test.
 L’analisi è applicabile sia nello sviluppo di test di personalità, sia di test cognitivi (abilità, intelligenza).

1
Analisi Fattoriale: come si procede

Il punto di partenza dell’analisi fattoriale è rappresentato da una matrice che contiene correlazioni tra le
variabili osservate (R)
Il punto di arrivo è formato da una matrice che contiene una misura della relazione tra le variabili osservate
e i fattori latenti (matrice di saturazione)
La correlazione al quadrato esprime la proporzione di varianza della singola variabile che è spiegata dal
fattore (R2)

Analisi fattoriale: il modello teorico

L’analisi fattoriale esamina la varianza che le variabili hanno in comune (varianza comune).
L’ipotesi di base è che la correlazione tra le variabili sia determinata da dimensioni non osservabili (fattori)
che in qualche modo sono causa o determinano i punteggi osservati nella variabili osservate.

I fattori possono essere interpretati come processi sottostanti le variabili che ne spiegano le loro
interrelazioni. Questa è un’interpretazione forte.

Modello Fattoriale Classico (forte)

xi  ij  j   i

2
Le componenti possono anche essere interpretate come variabili che permettono di riassumere e descrivere
la complessità dei dati. Questa è un’interpretazione debole.

Modello delle componenti principali (debole)

C j  1 j x1  2 j x2  ....  nj xn

Analisi fattoriale: due interpretazioni due applicazioni

1. Utilizzazione basata sulla definizione forte di AF


Verifica della struttura teorica di un’insieme di misure (L’atteggiamento consta di separate componenti
cognitive, emotive e comportamentali-conative?).1
Questo è un utilizzo che si basa sulla definizione forte dell’AF

1
COMPONENTI DI UN ATTEGGIAMENTO: COMPONENTE COGNITIVA (riguarda la conoscenza di un certo “oggetto”);
COMPONENTE EMOTIVA (propensione ad esprimere un giudizio); COMPONENTE CONATIVA ( propensione ad agire di
conseguenza)
3
2. Utilizzazione basata sulla definizione debole di AF

Ridurre una grande quantità di variabili osservate in un numero più gestibile di componenti (ad es., per
utilizzare queste nuove variabili sintetiche come predittori in una regressione multipla)
Quest’utilizzo si basa su una definizione debole dell’AF.

Analisi fattoriale: cosa non fa

Si seleziona il set di variabili da analizzare tenendo conto dei fattori che si vogliono ottenere
 Se voglio ottenere un fattore cognitivo ed uno emotivo, allora devo analizzare misure cognitive ed
emotive, non comportamentali.
 Se studio l’intelligenza, debbo misurare un numero di abilità sufficientemente ampio e diverso da
fornire un quadro soddisfacente del fattore generale di intelligenza

L’analisi fattoriale non crea costrutti che non sono rappresentati già nelle variabili osservate

Analisi fattoriale: quale approccio scegliere

Si sceglie il tipo di analisi fattoriale in base al significato che si vuole dare ai fattori.
 Analisi Componenti Principali (ACP) è preferibile se non si ipotizza l’esistenza di un processo comune
sottostante il set di misure (cioè se si vogliono analizzare variabili che sono empiricamente correlate,
ma senza specifiche ipotesi di appartenenza delle variabili allo stesso dominio concettuale).
 Analisi Fattori Comuni (AFC) è preferibile se si ipotizza l’esistenza di un processo comune sottostante
il set di misure (cioè se si vogliono analizzare indicatori empirici di uno stesso costrutto teorico).
 In pratica, se il campione di variabili e soggetti è sufficientemente ampio e rappresentativo, ACP e
AFC danno risultati molto simili. Inoltre, se i fattori sono “forti” i risultati sono analoghi.

4
Analisi fattoriale: entriamo un po’ più nel dettaglio

COMUNALITA’: varianza totale – varianza unica (1-U2)


Parte della varianza totale di una variabile che viene spiegata da fattori comuni (derivate dalla correlazioni
tra le variabili)
 Analisi Componenti Principali (ACP) analizza la varianza comune e la varianza unica
 Analisi Fattori Comuni (AFC) analizza solo la parte di varianza comune

Si parte da una matrice di correlazione fra variabili osservate per arrivare ad una matrice di correlazioni fra
variabili e fattori, e ad una matrice di correlazione fra fattori.

Il primo problema di risolvere è individuare la varianza dei fattori.


 Diagonalizzazione (assegnazione della varianza totale ai fattori). Trasformare in una matrice con
elementi diversi da zero solo nella diagonale

L  V ' RV  R = VLV ' (1.1)

Le correlazioni fra le variabili, gli elementi di R, sono rappresentabili come combinazione fra una matrice di
autovalori (L)che rappresenta le varianze dei fattori, e una matrice di autovettori (V) che rappresenta le
relazioni fra variabili e fattori.

Dalla (1.1) si ha:



R= V L  
LV' = AA' (1.2)
Vale a dire: la matrice di correlazione osservata è uguale al prodotto delle correlazioni fra le matrici di
correlazione fra le variabili e i fattori loro sottostanti.

5
La varianza totale della matrice di correlazione viene suddivisa in porzioni di varianza spiegabili attraverso i
fattori. Da qui si calcolano le saturazioni e le correlazioni fra fattori (che sono in genere = 0)

Data la matrice di correlazione tra le variabili R, vedremo come ottenere la matrice di covarianza tra fattori L
e la matrice di saturazione A.
E’ un semplice problema di autovalori e autovettori. La matrice R è reale e simmetrica, la matrice L è la
matrice diagonale degli autovalori di R, mentre la matrice A è il prodotto della matrice degli autovettori
associati per la radice quadrata di L la matrice diagonale degli autovettori associati.

mat R =( 1,.79,0.72\0.79, 1,0.77\0.72,0.77,1)


matrix list R

symmetric R[3,3]
c1 c2 c3
r1 1
r2 .79 1
r3 .72 .77 1

matrix symeigen V L = R
matrix list L

L[1,3]
e1 e2 e3
r1 2.5203756 .28156875 .19805569 (autovalori)

matrix list V

V[3,3]
e1 e2 e3
r1 .57494111 -.64072575 .50883518 (autovettori)
r2 .58727024 -.10985896 -.80190066
r3 .5696985 .75986941 .31311673

matrix L=diag(L)
matrix list L

symmetric L[3,3]
e1 e2 e3
e1 2.5203756 (matrice L con autovettori sulla diagonale)
e2 0 .28156875
e3 0 0 .19805569

6
matrix RR=V*L*V'

matrix list RR

symmetric RR[3,3]
r1 r2 r3 (riottenimento della matrice R di partenza)
r1 1
r2 .79 1 R = VLV’
r3 .72 .77 1

. mata
------------------------------- mata (type end to exit) ---------------------------------
: V:
> L=(2.52083756,0,0\0,0.28156875,0\0,0,0.19805569)

: L
[symmetric]
1 2 3
+----------------------------------------+
1 | 2.52083756 |
2 | 0 .28156875 |
3 | 0 0 .19805569 |
+----------------------------------------+

:V=(.57494111,-.64072575,.50883518\.58727024,-.10985896,-.80190066\.5696985,.75986941,
.31311673)

: V
1 2 3
+----------------------------------------+
1 | .57494111 -.64072575 .50883518 |
2 | .58727024 -.10985896 -.80190066 |
3 | .5696985 .75986941 .31311673 |
+----------------------------------------+

: L=sqrt(L)

: A=V*L (matrice di saturazione A)

: A
1 2 3
+----------------------------------------------+
1 | .912842378 -.3399886387 .2264492007 |
2 | .9324175174 -.0582945172 -.3568734447 |
3 | .9045186097 .4032099011 .1393477417 |
+----------------------------------------------+

: RR=A*A'

: RR
[symmetric]
1 2 3
+-------------------------------------------+ (riottenimento matrice R iniziale)
1 | 1.000152722 |
2 | .7901559911 1.000159333 | R =(V·rad(L))(rad(L)·V’)
3 | .720151318 .7701545614 1.000149933 |
+-------------------------------------------+

: end

7
L’autovalore e la varianza del fattore

Saturazioni , Comunalità e Varianza

8
Analisi Fattoriale: ancora sugli autovalori

 Gli autovalori sono le varianze dei fattori latenti.


 Le ricaviamo da un ricompattamento della varianza totale della matrice.
 Invece di rappresentare la varianza della matrice come dovuta a p (numero variabili) fonti di
variazione, tutte di var = 1, vogliamo rappresentarla come dovuta a:
 k (n. fattori) < p fonti di variazione, ognuna di esse in grado di spiegare più di
quanto fatto da una singola variabile osservata.

 Il ricompattamento produce k = p autovalori, ma solo alcuni dei fattori rappresentati dagli


autovalori sono sufficientemente grandi da risultare utili per la sintesi dei dati.
 Se non estraggo tanti fattori quante sono le variabili, non spiego tutta la varianza originale.

Analisi Fattoriale: condizioni di applicazione

 Disponibilità di dati su cui sia possibile calcolare coefficienti di correlazione r.


 Rapporto di circa 5 soggetti per variabile osservata (40 variabili, almeno 200 soggetti). In ogni caso
mai meno di 100.
 Relazioni lineari fra le variabili
 Conoscenze teorica sul dominio di indagine
 Il numero delle variabili considerate non dovrebbe essere inferiore a 3-5 per ciascuno dei costrutti
che ci si aspetta di ottenere

Analisi Fattoriale: quanti fattori estrarre

Estrazione delle dimensioni (fattori o componenti) con autovalori > 1.


 La logica, è che i fattori con autovalore (varianza) maggiore di 1 sono in grado di spiegare più di una
delle singole variabili osservate analizzate (che hanno varianza pari a 1).
 Inconveniente: questa scelta porta spesso ad estrarre un numero di fattori proporzionale al numero
di variabili.
 Se quindi fattorializzo 100 variabili, spesso ottengo 30 fattori con autovalore maggiore di 1. Se invece
fattorializzo poche varibili (10) ma mi aspetto 5 fattori, difficilmente avrò 5 autovalori > 1.
 In genere, se lo scopo dell’analisi è ottenere una rappresentazione semplice dei dati, il criterio
“prendo i fattori con autovalore > 1” non va bene.

Estrazione di fattori con autovalori associati sufficientemente distinti (ScreePLot)


Scree plot of eigenvalues after factor
4
3
Eigenvalues
2
1
0

1 2 3 4 5 6
Number

9
Inconveniente: E’ necessaria una certa esperienza; inoltre, non è scevra da un certo grado di arbitrarietà.
Secondo le indicazioni dello ScreePlot il numero di fattori da estrarre dovrebbe essere pari al numero
dell’autovalore (posto sulle ascisse) in corrispondenza del quale la curva cambia, sostanzialmente (qui sta
l’arbitrarietà), pendenza.

Estrazioni dei fattori: Considerazioni finali


 Bisogna flessibilmente utilizzare i criteri “autovalore > 1” e Scree test.
 Gli autovalori maggiori di 1 danno una prova necessaria dell’esistenza del fattore, ma non
sufficiente.
 Al contrario, lo scree test fornisce indizi sufficienti a estrarre un fattore, ma non necessari.

In pratica
 Se ho poche variabili osservate assume più rilevanza il criterio λ > 1.
 Con molte variabili mi fido di più dello scree test.

Sintassi per lo ScreePlot

use C:\docb\Scuola\2012\Factor\ana_fatt.dta
factor agg2 agg8 agg9 agg11 agg20 agg21,pcf
screeplot

Come vengono estratti i fattori

Si può decidere quanti fattori estrarre, non come estrarli. Infatti le varianze dei fattori vengono identificate
tramite processi puramente matematici secondo due
regole:
 Massimizzare la varianza spiegata
 Estrarre varianze fra loro indipendenti (fattori non correlati).

Questi criteri quasi mai portano alle soluzioni che noi ci aspettiamo. Per questo i fattori vengono ruotati
dopo l’estrazione.

Obiettivo della Rotazione

Rotazione dei fattori: spostare la posizione dei fattori nello spazio in modo tale che su di essi presentino
saturazioni elevate solo poche variabili, mentre molte altre presentino saturazioni basse o vicino alle zero. La
rotazione viene fatta in modo che una singola variabile tenda a correlare solo con un fattore e poco o nulla
con tutti gli altri.

Le soluzioni non ruotate mostrano un primo fattore troppo “pesante” e “acchiappatutto”, mentre i
successivi fattori sono “leggeri” e di difficile interpretazione.

Tramite la rotazione miriamo alla “struttura semplice”:


 Poche ma forti saturazioni diverse da zero;
 Assenza di variabili saturate da più di un fattore.

10
Tipi di Rotazione

Per raggiungere la struttura semplice è a volte sufficiente ruotare i fattori mantenendoli ortogonali.
 Ottengo fattori ruotati rispetto alla prima estrazione, ma i fattori ruotati rimangono fra loro
indipendenti

In alcuni casi la struttura semplice è più facilmente raggiungibile permettendo ai fattori di risultare correlati
dopo la rotazione
 In questo caso, non solo ruoto i fattori, ma elimino il vincolo di indipendenza fra i fattori

Perché Ruotare

 La soluzione non ruotata è il prodotto di un algoritmo (massimizzazione della varianza


spiegata da ciascun fattore, una volta esclusa la varianza spiegata dai fattori
precedentemente estratti; fattori ortogonali).

 La soluzione non ruotata non garantisce l’identificazione di aggregati omogenei e


interpretabili di variabili osservate.

. factor agg2 agg8 agg9 agg11 agg20 agg21,factors(2) pcf


(obs=3137)

Factor analysis/correlation Number of obs = 3137


Method: principal-component factors Retained factors = 2
Rotation: (unrotated) Number of params = 11

--------------------------------------------------------------------------
Factor | Eigenvaluea Differenceb Proportionc Cumulatived
-------------+------------------------------------------------------------
Factor1 | 3.78516 2.72733 0.6309 0.6309
Factor2 | 1.05782 0.68921 0.1763 0.8072
Factor3 | 0.36861 0.05003 0.0614 0.8686
Factor4 | 0.31859 0.03460 0.0531 0.9217
Factor5 | 0.28399 0.09817 0.0473 0.9690
Factor6 | 0.18582 . 0.0310 1.0000
--------------------------------------------------------------------------
LR test: independent vs. saturated: chi2(15) = 1.2e+04 Prob>chi2 = 0.0000

a. Eigenvalue: An eigenvalue is the variance of the factor. In the initial factor solution, the first factor will
account for the most variance, the second will account for the next highest amount of variance, and so on.
Some of the eigenvalues are negative because the matrix is not of full rank, that is, although there are 12
variables the dimensionality of the factor space is much less There are at most seven factors possible.

b. Difference: Gives the differences between the current and following eigenvalue.

c. Proportion: Gives the proportion of variance accounted for by the factor.

d. Cumulative: Gives the cumulative proportion of variance accounted for by this factor plus all of the
previous ones.

11
Factor loadingse (pattern matrix) and unique variances

-------------------------------------------------
Variable | Factor1 Factor2 | Uniquenessf
-------------+--------------------+--------------
Affidabile | 0.7982 -0.4148 | 0.1908
Determinato | 0.7526 0.4367 | 0.2429
Dinamico | 0.7572 0.4952 | 0.1814
Energico | 0.8058 0.3566 | 0.2236
Responsabile | 0.8304 -0.4364 | 0.1201
Scrupoloso | 0.8182 -0.3636 | 0.1982
-------------------------------------------------

e. Factor Loadings: The factor loadings for this orthogonal solution represent both how the variables are
weighted for each factor but also the correlation between the variables and the factor.

f. Uniqueness: Gives the proportion of the common variance of the variable not associated with the factors.
Uniqueness is equal to 1 - communality.

loadingplot

Factor loadings
.5

agg9
agg8

agg11
Factor 2
0

agg21
agg2
agg20
-.5

.76 .78 .8 .82 .84


Factor 1

12
È possibile ricorrere alla rotazione degli assi fattoriali, trasformando la matrice di saturazione:
A R = A NR × Λ

rotate

Factor analysis/correlation Number of obs = 3137


Method: principal-component factors Retained factors = 2
Rotation: orthogonal varimax (Kaiser off) Number of params = 11

--------------------------------------------------------------------------
Factor | Variance Difference Proportion Cumulative
-------------+------------------------------------------------------------
Factor1 | 2.52333 0.20368 0.4206 0.4206
Factor2 | 2.31965 . 0.3866 0.8072
--------------------------------------------------------------------------
LR test: independent vs. saturated: chi2(15) = 1.2e+04 Prob>chi2 = 0.0000

Rotated factor loadings (pattern matrix) and unique variancesg

-------------------------------------------------
Variable | Factor1 Factor2 | Uniquenessh
-------------+--------------------+--------------
agg2 | 0.8672 0.2389 | 0.1908
agg8 | 0.2546 0.8320 | 0.2429
agg9 | 0.2182 0.8781 | 0.1814
agg11 | 0.3481 0.8095 | 0.2236
agg20 | 0.9055 0.2449 | 0.1201
agg21 | 0.8472 0.2900 | 0.1982
-------------------------------------------------

Factor rotation matrix

--------------------------------
| Factor1 Factor2
-------------+------------------
Factor1 | 0.7330 0.6802
Factor2 | -0.6802 0.7330
--------------------------------

g. Rotated Factor Loadings: The factor loadings for the varimax orthogonal rotation represent both how the
variables are weighted for each factor but also the correlation between the variables and the factor. A
varimax rotation attempts to maximize the squared loadings of the columns.

h. Uniqueness: Same values as in e. above because it is still a two factor solution.

13
Matrice ruotata “manualmente”

mat a=e(L)

mat list a

a[6,2]
Factor1 Factor2
agg2 .79821197 -.41475984
agg8 .75257047 .43672052
agg9 .75721849 .49519989
agg11 .8057653 .35661021
agg20 .83035089 -.43639595
agg21 .81824861 -.36364691

mat b=[0.7330, 0.6802\ -0.6802, 0.7330]

mat list b

b[2,2]
c1 c2
r1 .733 .6802
r2 -.6802 .733

mat c=a*b

mat list c

c[6,2]
c1 c2
agg2 .86720902 .23892482
agg8 .25457685 .83201457
agg9 .21820619 .87804153
agg11 .3480597 .80947684
agg20 .90548373 .24492645
agg21 .84712886 .29001952

Factor loadings
1

agg9
.8

agg8
agg11
Factor 2
.6
.4

agg21
agg20
agg2
.2

.2 .4 .6 .8 1
Factor 1

Rotation: orthogonal varimax


Method: principal-component factors

14
Rotazione obliqua

Siccome nella rotazione obliqua i fattori sono correlati, le correlazioni fra variabili e fattori sono ambigue.
 Nota bene: accadeva lo stesso per la correlazioni fra X e Y nella regressione, quando la x era correlata
con altri predittori W, Z…
 La matrice pattern rappresenta quindi i coefficienti di regressione della variabile sul fattore, al netto
degli altri fattori.
 La matrice di struttura è meno utile a interpretare i fattori, perché le sue saturazioni non tengono
conto della correlazione fra i fattori

rotate, oblique oblimin(0)

Factor analysis/correlation Number of obs = 3137


Method: principal-component factors Retained factors = 2
Rotation: oblique oblimin (Kaiser off) Number of params = 11

--------------------------------------------------------------------------
Factor | Variance Proportion Rotated factors are correlated
-------------+------------------------------------------------------------
Factor1 | 3.23337 0.5389
Factor2 | 3.10587 0.5176
--------------------------------------------------------------------------
LR test: independent vs. saturated: chi2(15) = 1.2e+04 Prob>chi2 = 0.0000

Rotated factor loadings (pattern matrix) and unique variances

-------------------------------------------------
Variable | Factor1 Factor2 | Uniqueness
-------------+--------------------+--------------
agg2 | 0.9070 -0.0136 | 0.1908
agg8 | -0.0034 0.8720 | 0.2429
agg9 | -0.0613 0.9370 | 0.1814
agg11 | 0.1114 0.8150 | 0.2236
agg20 | 0.9486 -0.0195 | 0.1201
agg21 | 0.8659 0.0518 | 0.1982
-------------------------------------------------

Factor rotation matrix

--------------------------------
| Factor1 Factor2
-------------+------------------
Factor1 | 0.8931 0.8666
Factor2 | -0.4498 0.4991
--------------------------------

15
Factor loadings

1 agg9
agg8
.8

agg11
.6
Factor 2
.4 .2

agg21
agg2
agg20
0

0 .2 .4 .6 .8 1
Factor 1

Rotation: oblique oblimin(0)


Method: principal-component factors

Confronto fra soluzioni


Bisogna concentrarsi soprattutto sulle differenze fra rotazione ortogonale e rotazione obliqua

Rotazione ortogonale
Rotated factor loadings (pattern matrix) and unique variances

-------------------------------------------------
Variable | Factor1 Factor2 | Uniquenessh
-------------+--------------------+--------------
agg2 | 0.8672 0.2389 | 0.1908
agg8 | 0.2546 0.8320 | 0.2429
agg9 | 0.2182 0.8781 | 0.1814
agg11 | 0.3481 0.8095 | 0.2236
agg20 | 0.9055 0.2449 | 0.1201
agg21 | 0.8472 0.2900 | 0.1982
-------------------------------------------------

Rotazione obliqua
Rotated factor loadings (pattern matrix) and unique variances

-------------------------------------------------
Variable | Factor1 Factor2 | Uniqueness
-------------+--------------------+--------------
agg2 | 0.9070 -0.0136 | 0.1908
agg8 | -0.0034 0.8720 | 0.2429
agg9 | -0.0613 0.9370 | 0.1814
agg11 | 0.1114 0.8150 | 0.2236
agg20 | 0.9486 -0.0195 | 0.1201
agg21 | 0.8659 0.0518 | 0.1982
-------------------------------------------------

16
Scelta della soluzione
 Non vi sono regole auree.
 Alcuni autori prediligono in ogni caso un tipo di rotazione rispetto ad un altro.
 La rotazione ortogonale semplifica lo spazio dei fattori.
 La soluzione obliqua semplifica lo spazio delle variabili.
 In genere però, se la correlazione fra i fattori è bassa, molti autori prediligono la rotazione
ortogonale, che rende più semplice l’interpretazione indipendente dei fattori.
 Se però vi sono motivi teorici per considerare correlati i costrutti di cui si è alla ricerca, bisogna
coerentemente preferire la rotazione obliqua.

Controllo di fattibilità

1. Numero casi > 5 per ogni variabile


Ideale numero casi >20 per variabile
Meglio se N totale > 200
2. Tutte le variabili devono essere adatte (rapporti/misurabili)
3. Se le variabili sono normalmente distribuite la soluzione è più affidabile
4. Controllare con scatterplot la presenza di regressione lineare tra variabili
5. Controllare la Correlation matrix: almeno qualche correlazione > 0.3
6. Controllare anti-image matrix (elementi sulla diagonale > 0.5)
7. Si costruisce un grafico Q-Q plot1
8. Si calcola il test di Martia2
9. Controllare misure di adeguatezza globale:
 Bartlett’s test (significatività)
 KMO (>0.5 o >0,6)

Test di sfericità di Barlett


 1 
 2    N  1   2 p  5  log R con  p 2  p  2 gradi di libertà
 6 
R è il determinante della matrice di correlazione, N la dimensione del campione, p il numero di variabili.

1
Se la distribuzione delle variabili è normale multivariata e il numero dei casi meno il numero delle variabili è maggiore
di 25, allora i valori della distanza generalizzata seguono la distribuzione chi quadrato . Di fatto si può sfuttare questa
proprietà per costruire un test di normalità multivariata nel modo seguente:
 Si ordinano i valori di DJ 2 per ogni soggetto dal più basso al più alto.
 Si calcola per ogni Dj2 il corrispondente punteggio percentile nella distribuzione χ2(con p –numero di variabili-
gradi di libertà)
 Si costruisce il grafico dei due valori di punteggi D 2 e χ2 (Q-Q Plot), se la distribuzione è normale multivariata le
i
due serie di punteggi formano un grafico che ha un andamento lineare.
 Si possono considerare outliers multivariati i casi in cui la distanza di Mahalanobis Di2 risulta significativa al
livello p<.001
2
Per esaminare l’ipotesi di normalità multivariata Mardia (1970) ha sviluppato dei coefficienti di curtosi e di asimmetria
multivariata. Se la distribuzione delle p variabili è normale multivariata, e se il campione è sufficientemente ampio
(almeno 50 soggetti) il coefficiente di curtosi multivariata di Mardia dovrebbe essere minore o uguale a p(p+2).
Il coefficiente di Martia ha la seguente espressione:
p

D 
j 1
2 2
j

K
N
17
Un esempio virtuale: Computer-Aied Multivariate Analysis
(Abdelmonem Afifi et al. pagg. 391-416)

When is factor anaysis used?

L’analisi fattoriale è simile all’analisi delle componenti principali, nel senso che entrambe sono tecniche che
esaminano le interrelazioni tra un set di variabili.
Queste tecniche differiscono dall’analisi della regressione per il fatto che, a differenza di quest’ultima, non
si lavora con un variabile dipendente e un set di variabili indipendenti: tutte le variabili analizzate sono
indipendenti.

L’analisi fattoriale, pur essendo simile, differisce , in modo sostanziale, dall’analisi delle componenti
principali. Nell’analisi delle componenti principali l’obiettivo principale è selezionare un numero di
componenti in grado di spiegare, il più possibile, la varianza totale.
Per contro l’analisi fattoriale ha lo scopo di determinare dei fattori in grado di spiegare, il più possibile, le
interrelazioni tra le variabili originali.

Per applicheremo ora il modello dell’analisi fattoriale ad una data set costituito da 100 data points su cinque
variabili: x1, x2, x3, x4, x5.

. drawnorm x1 x2 x3 x4 x5, n(100) sds(1,1,1,2,2)


(obs 100)

. summarize x1 x2 x3 x4 x5

Variable | Obs Mean Std. Dev. Min Max


-------------+--------------------------------------------------------
x1 | 100 -.0426452 1.088588 -2.29724 2.679533
x2 | 100 -.1576768 .9359665 -2.32289 2.005048
x3 | 100 .0914501 1.094557 -2.958493 3.072021
x4 | 100 .2306473 2.402299 -5.336324 5.718323
x5 | 100 .0017733 1.900469 -5.261427 3.515217

. corr x1 x2 x3 x4 x5
(obs=100)

| x1 x2 x3 x4 x5 Matrice di correlazione
-------------+--------------------------------------------- delle variabili iniziali
x1 | 1.0000
x2 | 0.1337 1.0000
x3 | 0.0015 0.0280 1.0000
x4 | 0.2033 0.2445 0.1335 1.0000
x5 | -0.0446 -0.0912 0.0754 -0.1629 1.0000

Come sarà giustificato successivamente, le variabili devono essere sottoposte ad un processo di


standardizzazione:

xis 
 xi  xi 
sdi
Otterremo in tal modo delle nuove variabili xi → xis che, nel gergo dell’AF, sono chiamate variabili risposta.
. stand x1 x1s
. stand x2 x2s
. stand x3 x3s
. stand x4 x4s
. stand x5 x5s

18
(stand è un ado file scritto per l’occasione)

program define stand, rclass


args nvar stvar
quietly summarize `nvar'
local mean r(mean)
local sd r(sd)
generate `stvar'=(`nvar'-`mean')/`sd'
end

. summ x1s x2s x3s x4s x5s

Variable | Obs Mean Std. Dev. Min Max


-------------+--------------------------------------------------------
x1s | 100 -5.55e-09 1 -2.071119 2.50065
x2s | 100 -9.62e-10 1 -2.313345 2.310686
x3s | 100 -1.49e-10 1 -2.786463 2.723084
x4s | 100 1.10e-09 1 -2.317352 2.284343
x5s | 100 3.17e-09 1 -2.769422 1.848725

. corr x1s x2s x3s x4s x5s


(obs=100)

| x1s x2s x3s x4s x5s Matrice di correlazione


-------------+--------------------------------------------- sulle variabili risposta
x1s | 1.0000 (identica alla precedente)
x2s | 0.1337 1.0000
x3s | 0.0015 0.0280 1.0000
x4s | 0.2033 0.2445 0.1335 1.0000
x5s | -0.0446 -0.0912 0.0754 -0.1629 1.0000

. mat C=r(C)

. mat list C

symmetric C[5,5]
x1s x2s x3s x4s x5s
x1s 1
x2s .13371058 1
x3s .00151426 .02796868 1
x4s .20325095 .24454083 .13350293 1
x5s -.04456438 -.09117901 .07539474 -.16289141 1

. matrix symeigen V L = C

. matrix list L

L[1,5]
e1 e2 e3 e4 e5
r1 1.4721452 1.0736502 .92970768 .84558979 .67890707

. mat u=J(5,1,1)
. mat s=L*u
. mat list s
symmetric s[1,1]
c1
r1 5

Notiamo che se le variabili sono normalizzate, la somma degli autovalori corrisponde al numero delle variabili
stesse.

19
Le basi dell’AF

L’obiettivo dell’Af è quello di rappresentare ciascuna variabile risposta (variabili normalizzate) come
combinazione lineare di un subset di Fattori Comuni ( Fi ) più un fattore unico per ciascuna variabile risposta
( ei ).

x1s  l11 F1  l12 F2  ...  l1m Fm  e1


x2 s  l21 F1  l22 F2  ...  l2 m Fm  e2
(1.3)
...
x1P  lP1 F1  lP 2 F2  ...  lPm Fm  eP

dove:

1. m è il numero dei Fattori Comuni (questo numero sarà ovviamente minore di P, numero delle
variabili risposta)
2. F1 , F2 ,...Fm sono i Fattori Comuni con media zero e varianza unitaria.
3. lij è il coefficiente di Fj relativo alla variabile xis . Tali coefficienti vengono chiamati carichi (factor
loading)
4. e1 , e2 ,...eP sono i fattori unici (unique factors) e ognuno si riferisce ad una ed una sola variabile
risposta.

L’AF è, in un certo senso, l’immagine specchiata dell’Analisi della Componenti Principali, laddove ciascuna
componente principale è espressa come combinazione lineare delle variabili risposta. In questo modello il
numero di componenti principali è pari al numero delle variabili (anche se non utilizzeremo tutte le
componenti Principali)
Per contro, nell’AF, noi sceglieremo un numero di fattori minore del numero delle variabili risposta.

L’AF dividendo ogni variabile risposta in due parti (una condizionata dai Fattori Comuni e l’altra condizionata
dal Fattore Unico) ne divide anche la varianza associata.
La varianza associata ad una generica variabile risposta verrà quindi scomposta in due parti:

varianza  xis   Communality  Specificity

1. La Comunalità (Communality) hi2 , cioè la parte di varianza dovuta ai fattori comuni.


2. La Specificità (Specificity) ui2 , cioè la parte di varianza dovuta al fattore unico ei

Dato che le variabili sono standardizzate, si ha la seguente relazione:

var  xis   1  hi2  ui2 (1.4)

20
Estrazione iniziale dei fattori

Per l’estrazione iniziale dei fattori si seguono normalmente due metodi:

1. Analisi delle Componenti Principali


2. Analisi dei Fattori Principali.

Estrazione iniziale: Analisi delle componenti principali

Per soddisfare l’assunzione di varianza unitaria dei Fattori ( F ), dovremo dividere ciascuna componente
principale (Ci ) per la sua deviazione standard.

Cj
Fj  (1.5)
var  C j 

Ricordiamo la relazione tra ciascuna variabile xi (intenderemo, da qui in poi, anche xi come variabile
standardizzata, non distinguendo, se non altrimenti specificato, tra xis e xi )

C1  a11 x1  a12 x2  ...  a1P xP


C2  a21 x1  a22 x2  ...  a2 P xP
(1.6)
...
CP  aP1 x1  aP 2 x2  ...  aPP xP

da cui:
x1  a11C1  a21C2  ...  aP1C P
x2  a12 C1  a22C2  ...  aP 2C P
(1.7)
...
xP  a1P C1  a2 P C2  ...  aPP CP

(Notare che tra il primo e il secondo set di equazioni siamo in presenza di uno swap righe/colonne)

Sostituendo la (1.5) nelle (1.7) si ha:

x1  a11 F1 C1  a21 F2 C2  ...  aP1 FP C P


x2  a12 F1 C1  a22 F2 C2  ...  aP 2 FP C P
(1.8)
...
xP  a1P F1 C1  a2 P F2 C2  ...  aPP FP C P

Adesso modifichiamo il set di equazioni (1.8) in due modi:

1. Per le prime m componenti poniamo lij  a ji C j


2. conglobiamo gli ultimi P-m termini nel fattore ei

ei  am 1,1 Fm 1 var  Cm 1   ...  aPi FP var  CP 

21
Ottenendo infine:

xi  li1 F1  li 2 F2  ....  lim Fm  ei i  1, 2,..., P (1.9)

Abbiamo pertanto ottenuto i Fattori tramite una trasformazione delle Componenti Principali.
Dalla (1.9), tenuto presente che i Fattori hanno varianza unitaria, è immediato ricavare che:

hi2  li21  li22  ...  lim2 (1.10)

Con riferimento al data set generato casualmente e già utilizzato in precedenza, gli Autovalori della matrice
di correlazione (che esprimono la varianza di Ci ) valgono:

Var(C1) 1.4721452
Var(C2) 1.0736502
Var(C3) .92970768
Var(C4) .84558979
Var(C5) .67890707
Total 5

Notiamo ancora una volta che la somma degli autovalori corrisponde proprio al numero delle variabili.
Decidiamo di sceglier solamente componente principali i cui autovalori siano superiori a 1.
Poniamo pertanto m = 1.

. factor x1s x2s x3s x4s x5s, factors(2) pcf


(obs=100)

Factor analysis/correlation Number of obs = 100


Method: principal-component factors Retained factors = 2
Rotation: (unrotated) Number of params = 9

--------------------------------------------------------------------------
Factor | Eigenvalue Difference Proportion Cumulative
-------------+------------------------------------------------------------
Factor1 | 1.47215 0.39849 0.2944 0.2944
Factor2 | 1.07365 0.14394 0.2147 0.5092
Factor3 | 0.92971 0.08412 0.1859 0.6951
Factor4 | 0.84559 0.16668 0.1691 0.8642
Factor5 | 0.67891 . 0.1358 1.0000
--------------------------------------------------------------------------
LR test: independent vs. saturated: chi2(10) = 16.58 Prob>chi2 = 0.0841

Factor loadings (pattern matrix) and unique variances

-------------------------------------------------
Variable | Factor1 Factor2 | Uniqueness
-------------+--------------------+--------------
x1s | 0.5445 -0.0112 | 0.7034
x2s | 0.6354 -0.0126 | 0.5961
x3s | 0.1886 0.8379 | 0.2624
x4s | 0.7565 0.1286 | 0.4111
x5s | -0.4050 0.5957 | 0.4812
-------------------------------------------------

22
Tab. 1

Initial factor analysis summary for hypothetical data set from


principal components extraction method
Factor Loadings Communality Specificity
Variable F1 F2 hi2 ui2
x1 0.5445 -0.0112 0.296606 0.703394
x2 0.6354 -0.0126 0.403892 0.596108
x3 0.1886 0.8379 0.737646 0.262354
x4 0.7565 0.1286 0.58883 0.41117
x5 -0.405 0.597 0.520434 0.479566
Variance explained 1.72 1.5397 2.547408 2.452592
Percentage 34.4 30.794 50.94816 49.05184
Poiché i Factor Loadings esprimono le correlazioni tra le variabili
standardizzate e i Fattori, dono essere compresi in un range -1-+1.

Factor Diagram for Principal Components Extraction Method

23
Estrazione iniziale: Analisi dei fattori principali (metodo iterativo)
Questo algoritmo iterativo ha lo scopo di selezionare quei Fattori che massimizzano la comunalità totale,
ossia la varianza dovuta ai Fattori.
In pratica si lavora su una matrice di correlazione modificata ponendo le comunalità sulla diagonale
principale.

Matrice di correlazione originale


x1s x2s x3s x4s x5s
x1s 1
x2s .13371058 1
x3s .00151426 .02796868 1
x4s .20325095 .24454083 .13350293 1
x5s -.04456438 -.09117901 .07539474 -.16289141 1

Matrice di correlazione “modificata”


x1s x2s x3s x4s x5s
x1s h12
x2s .13371058 h22
x3s .00151426 .02796868 h32
x4s .20325095 .24454083 .13350293 h42
x5s -.04456438 -.09117901 .07539474 -.16289141 h52

L’algoritmo può essere così schematizzato:

1. Si stimano le comunalità iniziali (in genere si pongono uguali a 1)


2. Si introducono queste comunalità nella diagonale principale della matrice di correlazione
3. Si estraggono le m Componenti Principali dalla matrice modificata
4. Si moltiplicano i coefficienti delle Componenti principali per le deviazioni standard delle rispettive
Componenti Principali: si ottengono pertanto i Factor Loadings
5. Dai Factor Loading si ottengono delle nuove comunalità
6. Si torna al punto 2 sino a che due successivi set Factor Loadings si possono ritenere
sufficientemente stabili.
. factor x1s x2s x3s x4s x5s, factors(2) pf
(obs=100)

Factor analysis/correlation Number of obs = 100


Method: principal factors Retained factors = 2
Rotation: (unrotated) Number of params = 9
--------------------------------------------------------------------------
Factor | Eigenvalue Difference Proportion Cumulative
-------------+------------------------------------------------------------
Factor1 | 0.55731 0.45011 1.7794 1.7794
Factor2 | 0.10720 0.13208 0.3423 2.1216
Factor3 | -0.02488 0.06773 -0.0794 2.0422
Factor4 | -0.09261 0.14121 -0.2957 1.7465
Factor5 | -0.23382 . -0.7465 1.0000
--------------------------------------------------------------------------
LR test: independent vs. saturated: chi2(10) = 16.58 Prob>chi2 = 0.0841

Factor loadings (pattern matrix) and unique variances


-------------------------------------------------
Variable | Factor1 Factor2 | Uniqueness
-------------+--------------------+--------------
x1s | 0.3186 -0.0066 | 0.8985
x2s | 0.3839 -0.0096 | 0.8525
x3s | 0.1120 0.2588 | 0.9205
x4s | 0.4915 0.0452 | 0.7564
x5s | -0.2331 0.1950 | 0.9077
-------------------------------------------------
Abbiamo usato l’opzione pf anziché ipf, che fa uso dell’algoritmo descritto, perché il metodo ipf, applicato
sul presente data set NON converge.

24
Factor Diagram

Riassumiamo le opzioni disponibili in Stata.

pf, pcf, ipf, and ml indicate the type of estimation to be performed. The default is pf.

pf specifies that the principal-factor method be used to analyze the


correlation matrix. The factor loadings, sometimes called the factor
patterns, are computed using the squared multiple correlations as estimates
of the communality. pf is the default.

pcf specifies that the principal-component factor method be used to analyze the
correlation matrix. The communalities are assumed to be 1.

ipf specifies that the iterated principal-factor method be used to analyze the
correlation matrix. This reestimates the communalities iteratively.

ml specifies the maximum-likelihood factor method, assuming multivariate normal


observations. This estimation method is equivalent to Rao's canonical-
factor method and maximizes the determinant of the partial correlation
matrix. Hence, this solution is also meaningful as a descriptive method for
nonnormal data. ml is not available for singular correlation matrices. At
least three variables must be specified with method ml.

25
Rotazione Finale

. factor x1s x2s x3s x4s x5s, factors(2) pcf


(obs=100)

Factor analysis/correlation Number of obs = 100


Method: principal-component factors Retained factors = 2
Rotation: (unrotated) Number of params = 9
--------------------------------------------------------------------------
Factor | Eigenvalue Difference Proportion Cumulative
-------------+------------------------------------------------------------
Factor1 | 1.47215 0.39849 0.2944 0.2944
Factor2 | 1.07365 0.14394 0.2147 0.5092
Factor3 | 0.92971 0.08412 0.1859 0.6951
Factor4 | 0.84559 0.16668 0.1691 0.8642
Factor5 | 0.67891 . 0.1358 1.0000
--------------------------------------------------------------------------
LR test: independent vs. saturated: chi2(10) = 16.58 Prob>chi2 = 0.0841

Factor loadings (pattern matrix) and unique variances


-------------------------------------------------
Variable | Factor1 Factor2 | Uniqueness
-------------+--------------------+--------------
x1s | 0.5445 -0.0112 | 0.7034
x2s | 0.6354 -0.0126 | 0.5961
x3s | 0.1886 0.8379 | 0.2624
x4s | 0.7565 0.1286 | 0.4111
x5s | -0.4050 0.5957 | 0.4812
-------------------------------------------------
. rotate
Factor analysis/correlation Number of obs = 100
Method: principal-component factors Retained factors = 2
Rotation: orthogonal varimax (Kaiser off) Number of params = 9
--------------------------------------------------------------------------
Factor | Variance Difference Proportion Cumulative
-------------+------------------------------------------------------------
Factor1 | 1.47204 0.39829 0.2944 0.2944
Factor2 | 1.07375 . 0.2148 0.5092
--------------------------------------------------------------------------
LR test: independent vs. saturated: chi2(10) = 16.58 Prob>chi2 = 0.0841

Rotated factor loadings (pattern matrix) and unique variances


-------------------------------------------------
Variable | Factor1 Factor2 | Uniqueness
-------------+--------------------+--------------
x1s | 0.5446 -0.0024 | 0.7034
x2s | 0.6355 -0.0024 | 0.5961
x3s | 0.1751 0.8408 | 0.2624
x4s | 0.7544 0.1407 | 0.4111
x5s | -0.4145 0.5891 | 0.4812
-------------------------------------------------
Factor rotation matrix

--------------------------------
| Factor1 Factor2
-------------+------------------
Factor1 | 0.9999 0.0161
Factor2 | -0.0161 0.9999
--------------------------------

In questa situazione, applicando una rotazione ortogonale, il modello non migliora sostanzialmente.

26
Anche con una rotazione obliqua le cose non migliorano

. factor x1s x2s x3s x4s x5s, factors(2) pcf


(obs=100)

Factor analysis/correlation Number of obs = 100


Method: principal-component factors Retained factors = 2
Rotation: (unrotated) Number of params = 9

--------------------------------------------------------------------------
Factor | Eigenvalue Difference Proportion Cumulative
-------------+------------------------------------------------------------
Factor1 | 1.47215 0.39849 0.2944 0.2944
Factor2 | 1.07365 0.14394 0.2147 0.5092
Factor3 | 0.92971 0.08412 0.1859 0.6951
Factor4 | 0.84559 0.16668 0.1691 0.8642
Factor5 | 0.67891 . 0.1358 1.0000
--------------------------------------------------------------------------
LR test: independent vs. saturated: chi2(10) = 16.58 Prob>chi2 = 0.0841

Factor loadings (pattern matrix) and unique variances

-------------------------------------------------
Variable | Factor1 Factor2 | Uniqueness
-------------+--------------------+--------------
x1s | 0.5445 -0.0112 | 0.7034
x2s | 0.6354 -0.0126 | 0.5961
x3s | 0.1886 0.8379 | 0.2624
x4s | 0.7565 0.1286 | 0.4111
x5s | -0.4050 0.5957 | 0.4812
-------------------------------------------------
. rotate, oblimin

Factor analysis/correlation Number of obs = 100


Method: principal-component factors Retained factors = 2
Rotation: orthogonal oblimin (Kaiser off) Number of params = 9

--------------------------------------------------------------------------
Factor | Variance Difference Proportion Cumulative
-------------+------------------------------------------------------------
Factor1 | 1.47205 0.39831 0.2944 0.2944
Factor2 | 1.07374 . 0.2147 0.5092
--------------------------------------------------------------------------
LR test: independent vs. saturated: chi2(10) = 16.58 Prob>chi2 = 0.0841

Rotated factor loadings (pattern matrix) and unique variances


-------------------------------------------------
Variable | Factor1 Factor2 | Uniqueness
-------------+--------------------+--------------
x1s | 0.5446 -0.0029 | 0.7034
x2s | 0.6355 -0.0029 | 0.5961
x3s | 0.1758 0.8407 | 0.2624
x4s | 0.7545 0.1402 | 0.4111
x5s | -0.4141 0.5894 | 0.4812
-------------------------------------------------
Factor rotation matrix

--------------------------------
| Factor1 Factor2
-------------+------------------
Factor1 | 0.9999 0.0153
Factor2 | -0.0153 0.9999
--------------------------------

27
Assegnazione dei Factor Scores

. predict a
(regression scoring assumed)

Scoring coefficients (method = regression; based on oblimin(0) rotated factors)

----------------------------------
Variable | Factor1 Factor2
-------------+--------------------
x1s | 0.36996 -0.00476
x2s | 0.43175 -0.00513
x3s | 0.11617 0.78226
x4s | 0.51201 0.12763
x5s | -0.28356 0.55053
----------------------------------

Da cui

Factor Score 1  0.36996 x1  0.43175 x2  0.11617 x3  0.51201x4  0.28356 x5


Factor Score 2  0.00476 x1  0.005135 x2  0.78226 x3  0.12763x4  0.55053 x5

28
APPROFONDIMENTO
Roberto Albano Introduzione all’Analisi Fattoriale per la ricerca sociale
Alessandro Lubisco Analisi Fattoriale Unibo-Facoltà Scienze Statistiche

Gli assunti sulla struttura fattoriale


Si sarà notata una certa somiglianza del modello dell’analisi fattoriale con quello ben più noto della
regressione multipla; tuttavia, a differenza di quanto avviene in quest’ultima, i fattori, cioè le variabili
indipendenti nel modello fattoriale, sono variabili inosservabili e quindi incognite. Senza porre ulteriori
restrizioni, la stima del modello non sarebbe possibile: infatti si potrebbero individuare infiniti valori per i
parametri a e per i fattori F, tutti in grado di soddisfare le equazioni del modello.

Il modello della Analisi Fattoriale esplorativa si basa perciò sui seguenti


assunti:
E  Fk   0 il valore medio di ciascun fattore comune è pari a zero;
Var  Fk   1 la varianza di ciascun fattore comune è pari a uno;
Cov  Fk ,U m   0 i fattori comuni sono indipendenti, o ortogonali, rispetto ai fattori unici;
Cov U m ,U k   0 i fattori unici sono ortogonali tra loro.

Inoltre, senza perdita di generalità, si assume che:


Cov  Fk , Fj   0 vedremo però che tale condizione viene spesso rilasciata in fase di rotazione dei
fattori e precisamente nelle rotazioni oblique.

Analisi fattoriale e Analisi in Componenti principali

Alla base della Analisi fattoriale riposa l'idea che ognuno dei punteggi Z che concorrono a produrre la matrice
di correlazioni possa essere espresso come somma ponderata del punteggio nei fattori comuni e di
quello del fattore unico (a sua volta composto da un fattore specifico e un fattore di errore).
I punteggi Z, F, U sono tutti standardizzati, pertanto aventi media pari a 0 e varianza pari a 1.
Le saturazioni (amj), che ricordiamo sono oggetto di stima nella Analisi Fattoriale, hanno di norma valore
compreso tra -1 e +1 (escludendo per ora il discorso delle rotazioni oblique).

L’Analisi in Componenti Principali, tecnica sviluppata da Hotelling negli anni Trenta, non va confusa con
l’Analisi Fattoriale.
Nell’Analisi Fattoriale ognuna delle M variabili osservate è descritta linearmente nei termini di M nuove
componenti incorrelate: C1 C2...CM.
Le componenti a loro volta non sono nient’altro che combinazioni lineari delle variabili Z. Le componenti sono
costruite in modo tale che la prima spieghi la % massima di varianza del sistema, la seconda la % massima di
varianza residua e così via.

Nella Analisi Fattoriale ognuna delle M variabili osservate è ridescritta linearmente nei termini di K fattori
comuni (con K<<M), di un fattore specifico e di una componente stocastica.
Nella Analisi in Componenti Principali si vuole spiegare un numero M di variabili manifeste con un numero M
di componenti che variamente contribuiscono alle varianze delle variabili osservate.
Le differenze con la Analisi Fattoriale si attenuano per quanto concerne i risultati ottenuti con la Analisi in
Componenti Principali troncata, quando cioè si trattiene un numero di K di componenti molto inferiore al
numero M di variabili manifeste.
Questa variante della Analisi in Componenti Principali è spesso utilizzata al posto della Analisi Fattoriale vera
e propria. Ciò trova le sue origini nella maggior semplicità concettuale di questa tecnica e in una posizione

29
epistemologica improntata all’empirismo: quest’ultima rifiuta il concetto di variabile latente e l’idea stessa
che il dato empirico si possa considerare composto da ‘segnale puro’ (quello determinato dai
fattori comuni) e da ‘rumore’ (determinato dal fattore specifico e dalla componente erratica).
Le due tecniche non sono comunque in alcun modo equivalenti da un punto di vista logico, anche se spesso
(ma non necessariamente) possono portare a risultati molto simili.
L’Analisi in Componenti Principali, nella sua versione completa o in quella troncata, è una tecnica orientata
alla varianza di un sistema di equazioni lineari: essa ha infatti come funzione obiettivo quella di riscrivere un
sistema di variabili, sostituendo a queste delle componenti ordinabili per quantità di varianza spiegata da
ognuna del sistema complessivo.
Un’Analisi in Componenti Principali si ritiene riuscita se un numero ridotto di componenti, K, riesce a
riprodurre gran parte (indicativamente, l’80-90%) della varianza del sistema originario.
L’Analisi Fattoriale si ‘nutre’ invece di covariazioni tra le variabili: la funzione obiettivo, comunque venga
specificata, mira a annullare tali covariazioni imputandole all’azione di fattori latenti comuni. La varianza
spiegata, come vedremo è un by-product: non è quasi mai l’obiettivo principale di una Analisi Fattoriale.
Per la misurazione di costrutti teorici a mezzo di indicatori è più importante l’Analisi Fattoriale: questa tecnica
è in grado di filtrare la parte indicante degli indicatori dal ‘rumore’, composto dall’errore di misurazione e dai
fattori unici. Con l’Analisi in Componenti Principali troncata invece rumore e segnale puro sono codificati
insieme.

I risultati di una Analisi Fattoriale e di una Analisi in Componenti Principali troncata possono essere molto
simili (nella seconda le saturazioni sono inflazionate rispetto alla prima, ma presentano lo stesso pattern); in
particolare i risultati non differiscono sostanzialmente
quando:

 le comunalità sono molto alte (cioè se il rumore è basso: cosa che avviene molto di rado nelle
scienze sociali e del comportamento);

 il numero di variabili osservate è molto ampio; al loro aumentare, infatti,il peso dei valori in
diagonale diminuisce rispetto a quello delle covarianze

Quando le risorse di calcolo erano scarse si ricorreva all’Analisi in Componenti Principali troncata in luogo
dell’Analisi Fattoriale per ridurre la complessità dei calcoli. Oggi comunque questa giustificazione è venuta
meno; va segnalato tuttavia che alcuni importanti software statistici trattano, a nostro parere in modo
fuorviante, L’Analisi in Componenti Principali come uno dei diversi metodi di estrazione dei fattori nell’Analisi
Fattoriale.
L’Analisi in Componenti Principali troncata è una tecnica utile per altri scopi: primo fra tutti quello di costruire
indici sintetici a partire da batterie più o meno ampie di item in cui non è rintracciabile una precisa struttura
latente.

Ancora PCA vs FA
C’è uno stretto legame tra l’analisi fattoriale (Factor Analysis FA) e l’analisi delle componenti principali
(Principal Components Analysis PCA). Infatti, è usuale vedere la PCA come un metodo della FA (il software
statistico SPSS tratta entrambi i metodi nella stessa procedura).
E’ necessario, però, porre l’accento sulla profonda diversità tra i due metodi. Questo per diverse ragioni:
 La PCA è un metodo descrittivo che ha l’obiettivo di riassumere una matrice di dati in maniera tale
da esprimere la sua struttura in un numero ridotto di dimensioni.
La FA è una tecnica basata su un modello che richiede siano fatte assunzioni riguardo le distribuzioni
congiunte in popolazione delle variabili coinvolte. Ciò consente di fare inferenza riguardo alla
popolazione e di fare riferimento a concetti quali bontà di adattamento, significatività e precisione
delle stime.

30
 La seconda ragione per enfatizzare la distinzione tra PCA e FA sta nel fatto che, mentre l’analisi in
componenti principali è un metodo per individuare una particolare trasformazione delle variabili
osservate (una combinazione lineare), nella FA sono invece le variabili osservate a essere espresse
come combinazione lineare di fattori latenti. Per questo motivo, la FA si inserisce nell'ambito dei
modelli a variabili latenti.
Tradizionalmente l’unità di questa famiglia di metodi a variabili latenti è sempre stata oscurata
dall’uso di notazioni differenti e dalle diverse culture scientifiche da cui hanno avuto origine oltre che
dai diversi campi di utilizzo.

 Nella PCA si cerca di spiegare con poche componenti una grande parte della varianza delle variabili
osservate. Nella FA, invece, si prendono in considerazione le covarianze, o le correlazioni, tra le
variabili.

Nella pratica, ci sono alcuni data set per i quali il modello fattoriale non fornisce un adeguato adattamento.
Quindi, l’analisi fattoriale presenta alcuni aspetti soggettivi tali per cui tra statistici ci sono opinioni
contrastanti sulla sua validità. Talvolta, si individua un numero ridotto di fattori e tali fattori sono di facile
interpretazione. Per altri dati, invece, non sono chiari né il numero dei fattori, né la loro interpretazione

Un chiarimento sui Fattori di scala


Poiché il modello fattoriale risulta invariante (equivarianza) rispetto a cambiamenti di scala delle variabili in
X, è possibile standardizzare le variabili osservate, così da operare non sulla matrice di varianze e covarianze,
bensì sulla matrice R delle correlazioni.

Vedremo però, in fase di stima, che i metodi a cui si fa riferimento non godono al pari del modello della
proprietà di equivarianza rispetto a trasformazioni di scala. Pertanto le stime dei parametri che si ottengono
a partire dalla matrice di correlazione campionaria non consentono di risalire alle stime dei parametri che si
che si ottengono dalle matrici di varianze-covarianze.

Stima dei Parametri del Modello


Usualmente il punto di partenza per un’analisi fattoriale è la matrice di correlazione delle X.
Le correlazioni dovrebbero essere esaminate per prime. Se le correlazioni tra le X sono basse allora l’analisi
fattoriale rischia di non essere utile dal momento che correlazioni basse sono un sintomo della mancanza di
fattori comuni.
L’esame può anche svelare aspetti particolari o anomalie indesiderate di vario tipo. Per esempio, se tra le X
ve ne sono due molto correlate tra loro, a significare che una aggiunge poca informazione all’altra, diventerà
immediatamente visibile una correlazione prossima a uno. Il problema è che i fattori comuni alle altre X non
sarebbero in grado di spiegare questa particolare correlazione e non è desiderabile aggiungere un altro
fattore solo per spiegarne una.
Stimare il modello significa trovare i valori dei parametri che rendono la matrice di correlazione osservata
quanto più vicina possibile a quella ottenuta col modello.

Ciò di cui si ha bisogno è una procedura matematica in grado di stimare qualunque modello. Attualmente
sono disponibili diversi metodi implementati con software di ogni genere: minimi quadrati ordinari, minimi
quadrati generalizzati, massima verosimiglianza, …
Tutti questi metodi partono dalla costruzione di una distanza tra le matrici di correlazione osservata e del
modello; essi differiscono nella misura che viene scelta. Questi metodi forniscono generalmente risultati
pressoché simili, ma può essere istruttivo provarli tutti dal momento che con i software a disposizione è
molto semplice e veloce farlo. Ci sono comunque anche dei vantaggi teorici usando sia il metodo della
massima verosimiglianza che quello dei minimi quadrati pesati.

31
Stimare il modello non significa, ovviamente, avere la garanzia che la stima sia accettabile. Bisognerà
individuare dei metodi di valutazione per giudicare la bontà del modello.

I metodi di Stima
Riprendiamo l’equazione che descrive il Modello Fattoriale:
X  ΛF  u (1.11)

Se il modello fattoriale descrive adeguatamente i dati, vale una particolare relazione per la matrice Σ di
varianze-covarianze delle variabili osservate, che può essere scomposta nella somma di due matrici:
Σ = ΛΛ'  ψ (1.12)

 e uno di ψ, ψ
Cerchiamo uno stimatore di Λ, Λ  che approssimino al meglio la relazione (1.12)in cui Σ è
stimata con S.

I metodi di stima dei parametri del modello che andremo a esaminare sono i seguenti:

a) metodo delle componenti principali


b) metodo dei fattori principali (iterato)
c) metodo della massima verosimiglianza

Metodo delle componenti principali


La prima tecnica che prendiamo in considerazione è comunemente chiamata “metodo delle componenti
principali”. Il nome è probabilmente inadatto perché genera confusione tra l’analisi fattoriale e l’analisi delle
componenti principali. Nel metodo delle componenti principali per la stima dei pesi fattoriali, non si calcolano
affatto delle componenti principali.
La ragione del nome risiede nel fatto che le colonne di Λ , la matrice che contiene i pesi fattoriali, sono
proporzionali agli autovettori di S, per cui, i pesi fattoriali del j-esimo fattore sono proporzionali ai coefficienti
della j-esima componente principale.
I fattori sono perciò legati alle prime m componenti principali e sembrerebbe che l’interpretazione sia la
stessa delle componenti principali. In realtà, dopo la rotazione dei pesi fattoriali la loro interpretazione è
generalmente differente.
In generale, partendo da un set di p variabili osservate x1, …, xp si determina la matrice di varianza covarianza
campionaria1 S e si cerca di individuare uno stimatore Λ  che approssimi l’espressione fondamentale che
lega la matrice di varianza covarianza ai pesi fattoriali, utilizzando S invece di Σ:
  +ψ
S  ΛΛ'
Nel caso dell’approccio delle componenti principali si suppone che le varianze dei fattori specifici ψii siano
tutte nulle, cioè:
'
S  ΛΛ
Il “teorema spettrale” afferma che “data la matrice S (pxp) simmetrica, è sempre possibile trovare una
matrice A (pxp) ortogonale2 tale che
A 1 S A  L
con L diagonale”.

1
E’ importante ribadire che, se le variabili sono standardizzate, la matrice di covarianza coincide con la matrice di
correlazione. Quando non altrimenti specificato nel seguito supporremo sempre di avere a che fare con variabili
standardizzate.
2
Una matrice ortogonale è una matrice invertibile la cui trasposta coincide con la sua inversa.
32
Data l’ortogonalità di A è possibile riscrivere l’uguaglianza come
A' S A  L DIAG
Il teorema specifica inoltre che gli elementi presenti sulla diagonale di L sono gli autovalori1 di S, mentre le
colonne di A rappresentano i rispettivi autovettori2 normalizzati associati agli autovalori di S.
Per la scomposizione spettrale, vale quindi la seguente uguaglianza:

S = A L A’

dove L è la matrice diagonale che contiene in ordine decrescente gli autovalori di S, e A è la matrice
ortogonale avente per colonne i corrispondenti autovettori.
A causa del fatto che S è una matrice di varianze e covarianze e, di conseguenza, semidefinita positiva, gli
autovalori di S devono essere tutti maggiori o uguali a zero.
Dal momento che
L L L
ne segue che
S  A L  LA
Pertanto
  ' se Λ
S  ΛΛ  A L

Nel seguito riportiamo i risultati di una prima estrazione dei fattori con il metodo delle componenti principali.
Inizialmente sarà riportato l’output di Stata, successivamente saranno riportati i passi per ottenere la stessa
soluzione “manualmente” tramite operazioni matriciali.

Output Stata

. factor qn1s qn2s qn3s qn4s,pcf mineigen(0.1) pcf = principal-component factor


(obs=60)

Factor analysis/correlation Number of obs = 60


Method: principal-component factors Retained factors = 4
Rotation: (unrotated) Number of params = 6

Beware: solution is a Heywood case


(i.e., invalid or boundary values of uniqueness)

--------------------------------------------------------------------------
Factor | Eigenvalue Difference Proportion Cumulative
-------------+------------------------------------------------------------
Factor1 | 1.92556 0.61988 0.4814 0.4814
Factor2 | 1.30568 0.65172 0.3264 0.8078
Factor3 | 0.65396 0.53916 0.1635 0.9713
Factor4 | 0.11480 . 0.0287 1.0000
--------------------------------------------------------------------------
LR test: independent vs. saturated: chi2(6) = 96.43 Prob>chi2 = 0.0000

1
Sia A una matrice n x n. Uno scalare    è un atovalore di A se e solo se det  A   I n   0
2
Sia A una matrice quadrata n x n. Un vettore u  n si dice una autovettore di A se:
 u0
 Esiste uno scalare    tale che Au   u
33
Factor loadings (pattern matrix) and unique variances

---------------------------------------------------------------------
Variable | Factor1 Factor2 Factor3 Factor4 | Uniqueness
-------------+----------------------------------------+--------------
qn1s | -0.3141 0.7533 0.5774 0.0224 | 0.0000
qn2s | -0.1518 0.8141 -0.5605 0.0020 | 0.0000
qn3s | 0.9407 0.2299 0.0760 -0.2374 | 0.0000
qn4s | 0.9586 0.1501 0.0259 0.2407 | -0.0000
---------------------------------------------------------------------
FINE OUTPUT

Soluzione Matriciale

. corr qn1s qn2s qn3s qn4s


(obs=60)

| qn1s qn2s qn3s qn4s


-------------+------------------------------------
qn1s | 1.0000
qn2s | 0.3374 1.0000
qn3s | -0.0837 0.0013 1.0000
qn4s | -0.1677 -0.0373 0.8811 1.0000

. mat R=r(C)
. matrix symeigen V L =R
. matrix list L

L[1,4]
e1 e2 e3 e4
r1 1.9255603 1.3056815 .65395912 .11479905 autovalori di R

. matrix list V

V[4,4]
e1 e2 e3 e4 autovettori associati
qn1s -.22634106 .65925277 .71399875 .06604001
qn2s -.10936226 .71249954 -.69307334 .0058
qn3s .67794443 .20117733 .09397666 -.7007763
qn4s .69079735 .13136918 .03199232 .71029406

. mata
-------------------------- mata (type end to exit) ----------------------------------

: R=st_matrix("r(C)") passaggio output Sata in ambiente Mata


: V=st_matrix("V")
: L=st_matrix("L")
: L=diag(L)
: L=sqrt(L)
: LL=V*L

: LL
1 2 3 4
+-------------------------------------------------------------+
1 | -.3140811744 .7533045614 .5773946506 .0223756824 |
2 | -.1517560596 .8141477393 -.5604727426 .0019651564 |
3 | .940746595 .2298781413 .0759968028 -.2374370868 |
4 | .9585818941 .1501108632 .0258714688 .2406618958 |
+-------------------------------------------------------------+

: end
--------------------------------------------------------------------------------------

34
Questa conclusione non è però soddisfacente in quanto Λ  ha dimensioni pxp e non si ottiene quindi una
riduzione di dimensioni.
Allora, facendo riferimento all’analisi delle componenti principali, si può pensare di selezionare gli m
autovalori più grandi di S e i rispettivi autovettori. Quindi si ricostruisce L11/2 di dimensioni mxm in modo
tale che contenga sulla diagonale le m radici quadrate degli m autovalori più elevati. Di conseguenza A1 di
dimensioni pxm conterrà gli m autovettori associati agli m autovettori più elevati.
Alla fine si otterrà una stima della matrice dei pesi fattoriali di dimensione pxm
 A L
Λ 1 1

Le specificità vengono ricavate per differenza:


  S  ΛΛ
ψ '

Un’ultima considerazione sul metodo delle componenti principali: uno degli svantaggi è che tale metodo non
fornisce un test di bontà di adattamento. Possiamo esaminare i parametri ottenuti e valutare se essi sono
prossimi o uguali a zero, ma non c’è un test statistico che ci aiuti in questo. Tale test è presente invece nel
metodo che si basa sulla massima verosimiglianza.

Metodo dei fattori principali


Lo scopo è sempre quello di fornire una stima di Λ e Ψ.
Essendo nota la relazione
R - Ψ = ΛΛ’
si effettua una prima stima Ψ0 di Ψ (le specificità) per poter successivamente scomporre la matrice ridotta R
– Ψ0
Per la stima iniziale delle specificità, ciò che si è in grado di fare è partire da una stima iniziale delle comunalità
per ottenere le specificità dalla seguente relazione:
 ii  Var  X i   hi2  1  hi2

Il punto di partenza è perciò la stima iniziale delle comunalità sostituendo hi2 con :
a) il quadrato del coefficiente di correlazione multiplo tra X i e tutte le altre variabili (è la sostituzione
adottata da Stata)
b) il più elevato coefficiente di correlazione lineare tra Xi e le altre variabili max rij
i j

Ottenuta ψ̂ 0 , si determina la matrice ridotta R - ψ̂ 0 che permette di ottenere, con la scomposizione


spettrale, una stima Λ̂0 pari a:
ˆ 0  A L1/ 2
Λ 1 1
Questa scomposizione è possibile solo prendendo in considerazione gli autovalori positivi, non potendo fare
la radice quadrata di valori negativi.
Prendendo la diagonale della matrice Λ ˆ 0Λ
ˆ 0 ' si ottiene una nuova stima delle comunalità, tramite la quale
1
ottengo una nuova stima di ψ̂ .
Si calcola R - ψ̂ 0 ottenendo una nuova matrice ΛΛ’ sulla quale fare la scomposizione spettrale ottenendo:
ˆ 1  A L1/ 2
Λ 2 2

ˆ i 1 ψˆ i 1 non differiscono da Λ
Si procede fino a quando le nuove coppie Λ ˆ i ψˆ i
meno di un valore ε prefissato.
35
Il problema è che il processo di convergenza può essere molto lento o, addirittura, si può non arrivare alla
convergenza. Può addirittura accadere che il processo iterativo porti a stime delle comunalità superiori a 1
(si fa riferimento per comodità al caso in cui si stia utilizzando R, ma accade anche con S). Questo significa
che le stime di alcune varianze siano negative (Caso di Heywood), che è una situazione ovviamente senza
significato. In questo caso, cioè quando la comunalità assume valore superiore a 1, il processo iterativo
dovrebbe interrompersi con l’indicazione che non è possibile trovare una soluzione. Alcuni programmi
consentono di procedere con l’iterazione imponendo che le comunalità siano pari a 1 per tutti i passi
successivi. La soluzione che si determina, con ψi = 0 è in qualche maniera discutibile perché implica l’esatta
dipendenza di una variabile dai fattori, un risultato possibile, ma non auspicabile.
In aggiunta, l’analisi dei fattori con il metodo dei fattori principali, così come quella condotta con il metodo
delle componenti principali, non è invariante rispetto ai cambiamenti di scala.
C’è da dire, però, che uno dei vantaggi consiste nel fatto che non è necessario porre condizioni sulla forma
distributiva delle variabili X nella popolazione di riferimento.
Il metodo dei fattori principali porta a risultati molto simili a quelli che si ottengono con il metodo delle
componenti principali quando si verificano entrambe le seguenti condizioni:

1. Le correlazioni sono abbastanza elevate, con il risultato che il numero m di fattori è piccolo.
2. Il numero delle variabili, p, è grande.

Nel seguito riportiamo i risultati di una prima estrazione dei fattori con il metodo dei fattori principali.
Inizialmente sarà riportato l’output di Stata, successivamente saranno riportati i passi per ottenere la stessa
soluzione “manualmente” tramite operazioni matriciali. La soluzione riportata non è iterativa, ma limitata al
passo iniziale.

Ouput Stata
. factor Y1s Y2s Y3s,pf
(obs=5)

Factor analysis/correlation Number of obs = 5


Method: principal factors Retained factors = 2
Rotation: (unrotated) Number of params = 3

--------------------------------------------------------------------------
Factor | Eigenvalue Difference Proportion Cumulative
-------------+------------------------------------------------------------
Factor1 | 1.96078 1.48657 0.8118 0.8118
Factor2 | 0.47420 0.49395 0.1963 1.0082
Factor3 | -0.01975 . -0.0082 1.0000
--------------------------------------------------------------------------
LR test: independent vs. saturated: chi2(3) = 12.32 Prob>chi2 = 0.0064

Factor loadings (pattern matrix) and unique variances

-------------------------------------------------
Variable | Factor1 Factor2 | Uniqueness
-------------+--------------------+--------------
Y1s | 0.0194 0.6758 | 0.5430
Y2s | 0.9894 -0.1001 | 0.0111
Y3s | 0.9907 0.0868 | 0.0109
-------------------------------------------------

Fine Output

36
Soluzione Matriciale

. corr Y1s Y2s Y3s


(obs=5)

| Y1s Y2s Y3s


-------------+---------------------------
Y1s | 1.0000
Y2s | -0.0511 1.0000
Y3s | 0.0804 0.9810 1.0000

. regress Y1s Y2s Y3s

Source | SS df MS Number of obs = 5


-------------+------------------------------ F( 2, 2) = 0.84
Model | 1.82520313 2 .912601564 Prob > F = 0.5437
Residual | 2.17479651 2 1.08739826 R-squared = 0.4563
-------------+------------------------------ Adj R-squared = -0.0874
Total | 3.99999964 4 .999999911 Root MSE = 1.0428

------------------------------------------------------------------------------
Y1s | Coef. Std. Err. t P>|t| [95% Conf. Interval]
-------------+----------------------------------------------------------------
Y2s | -3.459111 2.689089 -1.29 0.327 -15.02933 8.111105
Y3s | 3.473916 2.689089 1.29 0.326 -8.0963 15.04413
_cons | 3.25e-08 .4663471 0.00 1.000 -2.00653 2.00653
------------------------------------------------------------------------------

. regress Y2s Y1s Y3s

Source | SS df MS Number of obs = 5


-------------+------------------------------ F( 2, 2) = 47.61
Model | 3.91770813 2 1.95885407 Prob > F = 0.0206
Residual | .082291863 2 .041145932 R-squared = 0.9794
-------------+------------------------------ Adj R-squared = 0.9589
Total | 4 4 .999999999 Root MSE = .20284

------------------------------------------------------------------------------
Y2s | Coef. Std. Err. t P>|t| [95% Conf. Interval]
-------------+----------------------------------------------------------------
Y1s | -.1308889 .1017521 -1.29 0.327 -.5686929 .3069151
Y3s | .9915528 .1017521 9.74 0.010 .5537488 1.429357
_cons | 7.52e-09 .0907149 0.00 1.000 -.3903145 .3903146
------------------------------------------------------------------------------

. regress Y3s Y1s Y2s

Source | SS df MS Number of obs = 5


-------------+------------------------------ F( 2, 2) = 47.80
Model | 3.91802632 2 1.95901316 Prob > F = 0.0205
Residual | .081973485 2 .040986742 R-squared = 0.9795
-------------+------------------------------ Adj R-squared = 0.9590
Total | 3.9999998 4 .999999951 Root MSE = .20245

------------------------------------------------------------------------------
Y3s | Coef. Std. Err. t P>|t| [95% Conf. Interval]
-------------+----------------------------------------------------------------
Y1s | .1309405 .1013584 1.29 0.326 -.3051697 .5670507
Y2s | .9877166 .1013584 9.74 0.010 .5516064 1.423827
_cons | -7.45e-09 .0905392 -0.00 1.000 -.3895588 .3895588
------------------------------------------------------------------------------

37
. mata
------------------------------- mata (type end to exit) ---------------------------------

: R=st_matrix("r(C)")
: R[1,1]=0.4563
: R[2,2]=0.9794
: R[3,3]=0.9795

: R
[symmetric]
1 2 3
+----------------------------------------------+
1 | .4563 |
2 | -.0511198599 .9794 |
3 | .0804485741 .9810229437 .9795 |
+----------------------------------------------+

: V=.
: L=.
: eigensystem(R, V, L)
: L
1 2 3
+----------------------------------------+
1 | 1.96075973 .474201994 -.01976172 |
+----------------------------------------+

: L=sqrt(L)
: L
1 2 3
+-------------------------------------------+
1 | 1.4002713 .68862326 .140576384i |
+-------------------------------------------+

: L=diag(L)
: A=V*L
: A
1 2 3
+----------------------------------------------+
1 | .019359439 .675760886 -.026973365i |
2 | .989372249 -.100105643 -.097358032i |
3 | .990720693 .086764508 .097752601i |
+----------------------------------------------+

: end
--------------------------------------------------------------------------------------

38
ROTAZIONE DEGLI ASSI FATTORIALI

Al fine di interpretare più agevolmente i pesi fattoriali è possibile effettuare delle rotazioni degli assi fattoriali
che mantengano l’invarianza di scala semplificando la struttura del sistema di pesi.
Il criterio da seguire dovrebbe condurre a suddividere le variabili in gruppi in modo tale che i pesi all’interno
di ciascun gruppo siano elevati su un singolo fattore e bassi o trascurabili sugli altri.
Tuttavia è difficile trovare una struttura fattoriale che soddisfi questi requisiti e sono pertanto state proposte
soluzioni analitiche che ottimizzano criteri meno restrittivi.
Le soluzioni più utilizzate rispettano l’ortogonalità dei fattori.

Rotazione VARIMAX (Kaiser, 1958)


La nuova matrice ortogonale viene determinata in modo tale da massimizzare un indice basato sulla somma
delle varianze dei quadrati dei pesi fattoriali normalizzati entro ciascuna colonna della matrice dei pesi
fattoriali.
La rotazione agisce sui pesi dei fattori facendo convergere proporzionalmente verso 0 quelli più bassi e
proporzionalmente verso 1 quelli più alti.
Con questo criterio di rotazione, le modifiche avvengono sulle colonne della matrice di pesi fattoriali.
Idealmente, è come se la rotazione fosse eseguita colonna per colonna della matrice dei pesi fattoriali,
mantenendo fissa la varianza del quadrato dei pesi fattoriali per colonna.
E’ una trasformazione utile soprattutto in presenza di più fattori.
Inoltre, è raccomandabile se si vuole ottenere una separazione netta tra i fattori e se la rotazione è effettuata
alla cieca, senza precisi criteri di riferimento.
La rotazione VARIMAX non dà, invece, buoni risultati se è estratto un solo fattore generale sul quale la
maggior parte delle variabili ha pesi rilevanti.

Rotazione QUARTIMAX
La nuova matrice ortogonale viene determinata in modo tale da massimizzare un indice basato sulla varianza
dei quadrati dei pxm pesi fattoriali:
Idealmente, è come se la rotazione fosse eseguita riga per riga sulla matrice dei pesi fattoriali.
L’applicazione di questo criterio rende facile l’attribuzione dei fattori comuni alla singola variabile.
La rotazione QUARTIMAX è adatta per identificare i fattori che governano la variabilità dei caratteri osservati.
Dà risultati migliori del VARIMAX quando si voglia semplificare il primo fattore estratto perché è un metodo
che minimizza il numero dei fattori.

Rotazione EQUAMAX
E’ una soluzione di compromesso tra i criteri VARIMAX e QUARTIMAX: invece di concentrarsi sulla
semplificazione dei pesi sulle righe o di quelli sulle colonne, tenta di realizzare una semplificazione
simultanea, mantenendo costante la varianza complessivamente spiegata dalla soluzione fattoriale.
Il criterio EQUAMAX non è in genere efficace nella ricerca di strutture semplici.

Rotazioni oblique
Le rotazioni non ortogonali sono procedimenti iterativi di variazione dell’angolo tra coppie di assi dopo una
rotazione ortogonale.
Il metodo PROMAX parte con una rotazione ortogonale VARIMAX dei pesi originari. Poi si cerca una
trasformazione dei pesi ruotati che incrementi i pesi già grandi in assoluto e riduca quelli più piccoli, con un
procedimento iterativo di aggiustamento.
L’angolo tra gli assi varia secondo passi predeterminati fino a trovare la soluzione “ottima”. Alla fine del
processo gli assi possono essere molto avvicinati, e, di conseguenza, la correlazione tra i fattori può risultare
molto elevata.
Prima di interpretare i fattori
39
Ecco alcune indicazioni metodologiche per interpretare i risultati di un’analisi dei fattori. E’ opportuno
verificare:
Forma del test grafico sugli autovalori: se il grafico mostra una forma a gomito, l’ipotesi dell’esistenza di
fattori è plausibile.
L’entità dei coefficienti di correlazione parziale tra le p variabili al netto dei fattori ottenuti: Se le correlazioni
parziali nette sono elevate in rapporto alle correlazioni iniziali, significa che i fattori specifici
dominano su quelli comuni, e, quindi, che l’analisi non ha avuto successo.
Il rapporto fra fattori comuni e fattori specifici si può esprimere come
la media delle comunalità delle p variabili, oppure con la misura “di Kaiser-Meyer-Olkin” (KMO)

Kaiser (1974) suggerisce di valutare l’indice nel seguente modo:

Meraviglioso almeno pari a 0,9


Meritorio da 0,8 a 0,9
Medio da 0,7 a 0,8
Mediocre da 0,6 a 0,7
Scarso da 0,5 a 0,6
Inaccettabile fino a 0,5

Test di sfericità di Bartlett: tale test è basato sull’assunto di normalità distributiva delle variabili osservate e
saggia l’ipotesi che la matrice di correlazione iniziale coincida con la matrice identità (caso per il quale non
ha senso effettuare un’analisi fattoriale in quanto le correlazioni tra le variabili sono tutte nulle). Al crescere
del valore del test di Bartlett decresce il corrispondente p-value. Se a causa di un elevato p-value l’ipotesi in
questione non può essere rifiutata, l’opportunità di stimare un modello fattoriale va ridiscussa.

ESEMPIO DI VALUTAZIONE DEI PESI FATTORIALI


Come fa un ricercatore a valutare i pesi fattoriali? Prima di tutto si valuta la matrice ruotata dei pesi fattoriali
piuttosto che quella non ruotata, per l’ovvia ragione che è più semplice da interpretare ed è equivalente dal
punto di vista matematico. I pesi fattoriali variano da -1 a +1, con la considerazione che più è alto il valore
assoluto del peso fattoriale, più è grande l’ammontare della varianza spiegata in X dal fattore. Un criterio per
decidere se una variabile “è causata” da un fattore è considerare solo pesi fattoriali superiori a 0,40 (anche
se di solito si sceglie comunque di visualizzare in output i pesi fattoriali superiori a 0,30).
I segni dei pesi fattoriali vanno considerati solo per colonna. Proviamo a considerare un esempio in cui
vengono osservate solo 4 variabili. Le prime due (X1 e X2) correlate tra loro, ma non con le altre due. Anche
X3 e X4 sono correlate tra loro e non correlate con le prime due.
Con una matrice di correlazione simile ci si aspetta che si otterranno due fattori, uno rappresentante la
correlazione tra le prime due variabili e uno la correlazione tra le seconde due.
R contiene quattro autovettori. L’analisi fattoriale, attraverso l’analisi degli autovalori associati a ciascuno
degli autovettori e tramite i criteri di scelta del numero di fattori (per esempio quelli con autovalori maggiori
di 1) riduce i quattro autovettori a due, definendoli “fattori”.
Si consideri ora una situazione nella quale il peso fattoriale per la variabile X1 nel Fattore 1 abbia segno
positivo, mentre il peso fattoriale per la variabile X2, sempre nel Fattore 1, abbia invece segno negativo.
Questo risultato significa che X1 e X2 sono correlate negativamente.
Si supponga anche che il ricercatore non si aspettasse un risultato del genere. Che verifiche si possono fare?

Il primo controllo deve riguardare il fatto che la codifica dei dati utilizzata per le due variabili X1 e X2 (cioè la
trasformazione in valori delle risposte ai test) vada nella stessa direzione concettuale. Si supponga che le

40
risposte alle domande alle quali si riferiscono le due variabili X1 e X2 siano codificate con la stessa scala Likert1
a 5 o 7 termini che va da “Sono completamente d’accordo” a “Sono completamente in disaccordo”, solo che
la prima domanda sia “Sento di avere un grande numero di buone qualità”, mentre la seconda sia
“Sento di non essere molto fiero di me stesso”.
Una persona con molta autostima tenderà a rispondere con “Sono molto d’accordo” alla prima domanda e
“Sono molto in disaccordo” alla seconda. Se la codifica della variabile X2 riferita alla seconda domanda, cioè
la trasformazione delle risposte dalla scala Likert a una scala numerica, non viene invertita prima di condurre
l’analisi fattoriale, allora i pesi fattoriali per le variabili X1 e X2 sullo stesso fattore avranno segni diversi. Se i
dati sono invece stati codificati in modo corretto, allora i pesi fattoriali sono il sintomo di un problema legato
sia al fattore sia alla validità del contenuto.

UNA PRIMA INTERPRETAZIONE


I pesi fattoriali
I pesi fattoriali hanno un’interpretazione simile a quella dei coefficienti delle componenti principali. Se si
analizza la matrice di correlazione, e sono state introdotte le ipotesi di incorrelazione dei fattori, il peso
fattoriale λij rappresenta la correlazione tra la variabile osservata Xi e il fattore Fj. Un fattore può essere
interpretato esaminando la struttura dei pesi di quel fattore sulle variabili osservate.
Esempio: La seguente tabella mostra i pesi fattoriali di un modello a due fattori.
I dati riguardano i voti ottenuti da un gruppo di studenti inglesi in alcune materie.

λi1 λi2
Gaelico 0.56 0.43
Inglese 0.57 0.29
Storia 0.39 0.45
Aritmetica 0.74 0.28
Algebra 0.72 0.21
Geometria 0.60 0.13

Dal momento che in questo caso è stata analizzata la matrice di correlazione, ciascun peso fattoriale λ può
essere interpretato come la correlazione tra il voto in una materia e un fattore. Per esempio, la correlazione
tra il voto in Gaelico e il primo fattore è pari a 0,56.
Nel tentativo di dare un’interpretazione al primo fattore ci si deve interrogare sul perché ci sia una elevata
correlazione positiva con tutte le materie. Per quello che riguarda il secondo fattore c’è una correlazione
positiva con le materie umanistiche e negativa con quelle matematiche.
Quindi, il primo fattore può essere interpretato come un’abilità generale su tutte le materie, mentre il
secondo mostra il contrasto tra le materie umanistiche e quelle matematiche.
Studenti che vanno meglio nelle materie umanistiche avranno un punteggio fattoriale positivo elevato,
mentre studenti che vanno meglio nelle materie matematiche piuttosto che in quelle umanistiche avranno
punteggio fattoriale negativo elevato.

1
La scala Likert è una tecnica per la misura dell'atteggiamento. Tale tecnica consiste principalmente nel mettere a punto
un certo numero di affermazioni (tecnicamente definite item) che esprimono un atteggiamento positivo e negativo
rispetto ad uno specifico oggetto. La somma di tali giudizi tenderà a delineare in modo ragionevolmente preciso
l'atteggiamento del soggetto nei confronti dell'oggetto. Per ogni item si presenta una scala di accordo/disaccordo,
generalmente a 5 o 7 modalità. Ai rispondenti si chiede di indicare su di esse il loro grado di accordo o disaccordo con
quanto espresso dall'affermazione. Questo metodo è applicabile sia per atteggiamenti di tipo unidimensionale che
multidimensionale (per cui sono necessarie tecniche statistiche come l'analisi fattoriale o l'analisi delle componenti
principali).
41
Le comunalità
La comunalità di una variabile osservata standardizzata è la radice quadrata del coefficiente di correlazione
multiplo o la proporzione di varianza spiegata dai fattori comuni. Le comunalità dei voti nelle materie del
primo esempio stimate con l’analisi fattoriale sono indicate nella tabella che segue.

Comunalità
Gaelico 0.49
Inglese 0.41
Storia 0.36
Aritmetica 0.62
Algebra 0.56
Geometria 0.37

Da ciò si legge che il 49% della varianza nei voti in Gaelico è spiegata dai due fattori comuni. Si ricorda che la
comunalità di una variabile è data dalla somma dei quadrati dei pesi fattoriali per quella variabile. La
comunalità per i voti in Gaelico è calcolata come 0,562 + 0,432 = 0,49. Più alta è la comunalità di una variabile,
me glio tale variabile serve da indicatore per il fattore associato. In altre parole, una variabile Xi con una
elevata comunalità è indicatore “più puro” dei fattori comuni F con una minore “contaminazione” da parte
del fattore specifico ui. La somma delle comunalità è la varianza spiegata dal modello fattoriale. Nel caso in
questione è 2,81 pari al 47% di 6, che è la varianza totale dei voti nelle 6 materie.

ADEGUATEZZA DEL MODELLO E SCELTA DEL NUMERO DI FATTORI


Un obiettivo primario dell’analisi fattoriale è di ridurre le dimensioni del data set originario mantenendo un
numero di dimensioni sufficienti da fornire comunque una buona rappresentazione dei dati originari. Ci sono
diverse vie per verificare l’adeguatezza del modello.
Percentuale di varianza spiegata da fattori
Sebbene lo scopo dell’analisi fattoriale sia quello di spiegare la covarianza o, analogamente, la correlazione
tra le variabili osservate piuttosto che la varianza, tuttavia la percentuale di varianza spiegata dai fattori
comuni dovrebbe essere ragionevolmente elevata. I due fattori dell’esempio sui voti nelle materie
spiegavano approssimativamente il 47% della varianza complessiva. Anche le comunalità possono essere
usate per verificare che le variabili osservate siano adeguatamente spiegate dai fattori. Dalla tabella delle
comunalità dell’esempio sui voti nelle materie si vede che i voti in Aritmetica sono spiegati meglio di quelli in
Storia.
Matrice di correlazione riprodotta
Un metodo efficace per verificare l’adeguatezza del modello è di confrontare le matrici di correlazione
riprodotta1 e osservata. Più le due matrici sono simili migliore sarà il giudizio sul modello fattoriale in esame.

Test sulla bontà di adattamento


Introducendo le ipotesi sulla normalità distributiva, si può effettuare un test basato sul rapporto di
verosimiglianza, o test sulla bontà di adattamento, per valutare l’ipotesi H0 che la matrice di covarianza
osservata abbia la forma specificata dal modello fattoriale. Il non rifiuto di tale ipotesi significa buon
adattamento del modello. La statistica test, indicata con W, si distribuisce come un χ2 con [(p - q)2 - (p + q)2]
/ 2 gradi di libertà. Nell’esempio dei voti la statistica test valeva 2,18, con 4 gradi di libertà; ciò non consente
di rifiutare l’ipotesi nulla. Se si crede che il modello con un certo numero di fattori non abbia un buon
adattamento, si potrebbe scegliere di aggiungere più fattori al fine di migliorarlo. Tuttavia, bisogna sempre
tener presente l’equilibrio tra l’interpretabilità dei fattori e la bontà di adattamento.

1
La matrice di correlazione riprodotta si ottiene moltiplicando la matrice dei pesi per la sua trasposta.
42
Un modello con un ottimo adattamento e un elevato numero di fattori potrebbe non essere interpretabile,
mentre un modello con minor adattamento potrebbe in realtà svelare interessanti caratteristiche dei dati.

DETERMINAZIONE DEI PUNTEGGI FATTORIALI


Un’ulteriore fase da compiere è la stima dei fattori in funzione delle variabili osservate. Per questo è
ecessario calcolare i punteggi fattoriali.
Il metodo di Bartlett per la stima dei punteggi fattoriali è basato sulla massima verosimiglianza e produce
punteggi con media=0.
Il modello fattoriale è il solito:
X = ΛF + u
A questo punto dell’analisi, sono noti i pesi λik e Ψ.
Se vale la condizione di normalità distributiva (abbiamo inoltre considerato X espressa in termini di scarto
dalla media), eguagliando a zero le derivate parziali rispetto a F della log-verosimiglianza di X si ottiene:

Fˆ   Λ'ψ -1 Λ  Λ'ψ -1 X
1

Si può anche sfruttare l’analogia formale tra il modello fattoriale e quello di regressione multipla.
X è noto, u è interpretabile come un vettore di residui non omoschedastici (E(ujuj’)=Ψ) e quindi per stimare
F è necessario ricorrere ai minimi quadrati generalizzati, pervenendo alla medesima soluzione.

Il metodo di Thompson imposta il problema della stima in un’ottica bayesiana.

F*   I  Λ'ψ -1 Λ  Λ'ψ -1 X
1

Lo stimatore di Bartlett è corretto mentre quello di Thompson è distorto, tuttavia lo stimatore di Bartlett
presenta un errore medio di previsione maggiore.
Un metodo basato sulla regressione produce punteggi fattoriali che possono essere correlati fra loro anche
se i fattori non lo sono.

43
ERRORI COMUNI NELL’USO DELL’ANALISI FATTORIALE
1. Raccogliere i dati prima di pianificare l’analisi fattoriale
2. Utilizzare variabili con cattive distribuzioni e forme di regressione inappropriate:
a) Distribuzioni fortemente asimmetriche (test di abilità troppo facili o troppo difficili per i
soggetti esaminati)
b) Distribuzioni tronche
c) Distribuzioni bimodali
d) Distribuzioni con alcuni casi estremi
e) Regressioni non lineari
3. Utilizzare variabili che non sono empiricamente indipendenti l’una dall’altra:
a) Assegnare a più di una variabile la stessa risposta relativa a un item
b) In un item a scelta forzata, assegnare una risposta alternativa a una variabile e l’altra a una
seconda variabile
c) Avere una variabile come combinazione lineare delle altre (per esempio, i punteggi assieme
al totale)
4. Mancata sovradeterminazione dei fattori: il numero di variabili osservate dovrebbe essere diverse
volte più grande del numero dei fattori. Ci dovrebbero essere per lo meno cinque buone variabili
“marker” per ogni fattore anticipato.
5. Utilizzare variabili troppo complesse. Le variabili migliori per definire un fattore sono relativamente
pure da un punto di vista fattoriale, cioè le variabili devono sottendere a un unico fattore e non
misurarne più di uno.
6. Includere nell’analisi variabili fortemente simili che producono fattori a un livello molto basso nella
gerarchia quando invece vengono cercati costrutti di maggiore generalità. Includere due item simili
in un elenco di alternative di risposta o due variabili che sono sostanzialmente risposte alternative
alla stessa domanda rappresentano errori di questo tipo. Sarebbero come chiedere con una
domanda di assegnare un punteggio alla propria predisposizione verso l’acquisto di prodotti
finanziari rischiosi e con un’altra di assegnare un punteggio alla propria predisposizione ad acquistare
prodotti finanziari non rischiosi.
7. Procedure di campionamento inadeguate:
a) Prendere un campione troppo piccolo per ottenere correlazioni stabili
b) Combinare due diversi gruppi con differenti strutture fattoriali nello stesso campione per
effettuare un’unica analisi fattoriale
8. Non includere un numero sufficiente di fattori nell’analisi (bilanciando però l’esigenza di completezza
interpretativa con la contrapposta esigenza di semplificare il sistema a un numero ridotto di
dimensioni)
9. Usare procedure di rotazione inadeguate:
a) Non effettuare alcuna rotazione
b) Utilizzare una soluzione ortogonale quando invece sarebbe necessario utilizzarne una
obliqua per una migliore rappresentazione/interpretazione dei risultati
c) Consentire un grado di obliquità non giustificato tra i fattori nella ricerca di una struttura
semplice
d) Utilizzare criteri di rotazione ritenuti inappropriati per il tipo di dati analizzati
10. Interpretare il primo fattore estratto come “fattore generale”
11. Saltare a conclusioni riguardo la natura di un fattore sulla base di informazioni insufficienti

44
Esempio completo (DOCUMENTA)

“documenta” (con la "d" minuscola) è una delle più importanti manifestazioni internazionali d'arte
contemporanea europee, che si tiene con cadenza quinquennale nella città tedesca di Kassel, nell'Assia
settentrionale.
Ad un campione di visitatori è stato somministrato il seguente questionario sulle motivazioni che li hanno
indotti alla visita.

Histogram v01-v04 (interested intertainment)


.3

.5
.4
.2

.3
Density

Density
.2
.1

.1
0

0.0 2.0 4.0 6.0 0 2 4 6


v01 v02
.3

.4
.3
.2
Density

Density
.2
.1

.1
0

0 2 4 6 0 2 4 6
v03 v04

45
Histogram v05-v08 (interested information)
.3

.4
.3
.2
Density

Density
.2
.1

.1
0

0
0 2 4 6 0 2 4 6
v05 v06

.6
.4
.3

.4
Density
Density
.2

.2
.1

0
0

0 2 4 6 0 2 4 6
v07 v08

V02 è spostata a dx: gran parte dei visitatori ri reca alla exhibition per fruire di una esperienza culturale.
V08 è spostata a sx in modo estremo. La gran parte del campione si reca alla exhibition come persona privata.
L’item V08 è stato rimosso dall’analisi fattoriale.

.drop v08

Elimino tutti i soggetti con almeno un missing

. drop if v01==. | v02==. | v03==. | v04==. | v05==. | v06==. | v07==.


(24 observations deleted)

. summarize v01 v02 v03 v04 v05 v06 v07

Variable | Obs Mean Std. Dev. Min Max


-------------+--------------------------------------------------------
v01 | 751 2.71771 1.354575 1 5
v02 | 751 4.053262 1.1684 1 5
v03 | 751 2.846871 1.39971 1 5
v04 | 751 2.51265 1.378709 1 5
v05 | 751 2.906791 1.429907 1 5
-------------+--------------------------------------------------------
v06 | 751 3.627164 1.207535 1 5
v07 | 751 4.090546 1.053149 1 5

46
Standardizzo le variabili v0i →v0is

. stand v01 v01s


. stand v02 v02s
. stand v03 v03s
. stand v04 v04s
. stand v05 v05s
. stand v06 v06s
. stand v07 v07s

Analizzo la matrice di correlazione

. corr v01s v02s v03s v04s v05s v06s v07s


(obs=751)

| v01s v02s v03s v04s v05s v06s v07s


-------------+---------------------------------------------------------------
v01s | 1.0000
v02s | 0.2033 1.0000
v03s | 0.3365 0.2439 1.0000
v04s | 0.2939 0.2967 0.2459 1.0000
v05s | -0.1003 -0.0353 -0.2197 -0.0123 1.0000
v06s | 0.1581 0.2012 0.0443 0.0797 0.3327 1.0000
v07s | -0.0372 0.0947 -0.1317 -0.0412 0.3447 0.2845 1.0000

Ci sono alcune correlazioni maggiori di 0.3, si riconoscono distintamente due “blocchi”.

Test di Fattibilità
. factortest v01s v02s v03s v04s v05s v06s v07s

Determinant of the correlation matrix


Det = 0.446

Bartlett test of sphericity

Chi-square = 603.735
Degrees of freedom = 21
p-value = 0.000
H0: variables are not intercorrelated

Kaiser-Meyer-Olkin Measure of Sampling Adequacy


KMO = 0.645

47
Quanti autovalori estrarre?

. factor v01s v02s v03s v04s v05s v06s v07s,ipf


(obs=751)

Factor analysis/correlation Number of obs = 751


Method: iterated principal factors Retained factors = 6
Rotation: (unrotated) Number of params = 21

--------------------------------------------------------------------------
Factor | Eigenvalue Difference Proportion Cumulative
-------------+------------------------------------------------------------
Factor1 | 1.32797 0.16011 0.4252 0.4252
Factor2 | 1.16786 0.90518 0.3740 0.7992
Factor3 | 0.26268 0.02970 0.0841 0.8833
Factor4 | 0.23298 0.14762 0.0746 0.9579
Factor5 | 0.08535 0.03910 0.0273 0.9853
Factor6 | 0.04625 0.04647 0.0148 1.0001
Factor7 | -0.00022 . -0.0001 1.0000
--------------------------------------------------------------------------
LR test: independent vs. saturated: chi2(21) = 604.54 Prob>chi2 = 0.0000

Factor loadings (pattern matrix) and unique variances

-----------------------------------------------------------------------------------------
Variable | Factor1 Factor2 Factor3 Factor4 Factor5 Factor6 | Uniqueness
-------------+------------------------------------------------------------+--------------
v01s | 0.5823 0.0368 0.2988 0.0103 0.1187 -0.0504 | 0.5535
v02s | 0.5221 0.2052 -0.3488 -0.1382 -0.0254 -0.0086 | 0.5439
v03s | 0.5620 -0.1389 0.0990 -0.0989 -0.0501 0.1638 | 0.6160
v04s | 0.5498 0.0764 -0.1199 0.3463 0.0116 -0.0348 | 0.5562
v05s | -0.2305 0.6623 0.0620 0.2164 -0.0571 0.0872 | 0.4466
v06s | 0.1880 0.6054 0.1355 -0.1583 -0.1396 -0.0812 | 0.5286
v07s | -0.0988 0.5422 -0.0731 -0.1102 0.2127 0.0377 | 0.6321
-----------------------------------------------------------------------------------------

Scree plot of eigenvalues after factor


1.5
1
Eigenvalues
.5
0

0 2 4 6 8
Number

I due fattori sono confermati sia dal “gionocchio” della curva sia dalla grandezza degli autovalori (i primi due
autovalori > 1)

48
Prima estrazione (due fattori) metodo: fattori principali con iterazione
. factor v01s v02s v03s v04s v05s v06s v07s,ipf factors(2)
(obs=751)

Factor analysis/correlation Number of obs = 751


Method: iterated principal factors Retained factors = 2
Rotation: (unrotated) Number of params = 13
--------------------------------------------------------------------------
Factor | Eigenvalue Difference Proportion Cumulative
-------------+------------------------------------------------------------
Factor1 | 1.19659 0.13324 0.5295 0.5295
Factor2 | 1.06334 0.96150 0.4705 1.0000
Factor3 | 0.10184 0.01970 0.0451 1.0451
Factor4 | 0.08214 0.09447 0.0363 1.0814
Factor5 | -0.01233 0.00579 -0.0055 1.0760
Factor6 | -0.01812 0.13543 -0.0080 1.0679
Factor7 | -0.15355 . -0.0679 1.0000
--------------------------------------------------------------------------
LR test: independent vs. saturated: chi2(21) = 604.54 Prob>chi2 = 0.0000

Factor loadings (pattern matrix) and unique variances


-------------------------------------------------
Variable | Factor1 Factor2 | Uniqueness
-------------+--------------------+--------------
v01s | 0.5450 0.1019 | 0.6926
v02s | 0.4412 0.2327 | 0.7512
v03s | 0.5935 -0.0701 | 0.6429
v04s | 0.4807 0.1242 | 0.7535
v05s | -0.2875 0.5926 | 0.5662
v06s | 0.1220 0.6032 | 0.6213
v07s | -0.1549 0.5133 | 0.7125
-------------------------------------------------

Prima estrazione (due fattori) metodo: componenti principali


. factor v01s v02s v03s v04s v05s v06s v07s,pcf
(obs=751)

Factor analysis/correlation Number of obs = 751


Method: principal-component factors Retained factors = 2
Rotation: (unrotated) Number of params = 13
--------------------------------------------------------------------------
Factor | Eigenvalue Difference Proportion Cumulative
-------------+------------------------------------------------------------
Factor1 | 1.89175 0.19270 0.2703 0.2703
Factor2 | 1.69906 0.88548 0.2427 0.5130
Factor3 | 0.81358 0.03764 0.1162 0.6292
Factor4 | 0.77594 0.10403 0.1108 0.7400
Factor5 | 0.67191 0.04784 0.0960 0.8360
Factor6 | 0.62407 0.10038 0.0892 0.9252
Factor7 | 0.52369 . 0.0748 1.0000
--------------------------------------------------------------------------
LR test: independent vs. saturated: chi2(21) = 604.54 Prob>chi2 = 0.0000

Factor loadings (pattern matrix) and unique variances


-------------------------------------------------
Variable | Factor1 Factor2 | Uniqueness
-------------+--------------------+--------------
v01s | 0.6907 0.0392 | 0.5213
v02s | 0.6129 0.2518 | 0.5609
v03s | 0.6980 -0.1856 | 0.4783
v04s | 0.6531 0.0853 | 0.5662
v05s | -0.2464 0.7392 | 0.3928
v06s | 0.2233 0.7248 | 0.4248
v07s | -0.1210 0.7215 | 0.4648
-------------------------------------------------

49
Ruotiamo la prima estrazione facendo riferimento al metodo dei fattori principali

. quietly factor v01s v02s v03s v04s v05s v06s v07s,ipf factors(2)
. rotate

Factor analysis/correlation Number of obs = 751


Method: iterated principal factors Retained factors = 2
Rotation: orthogonal varimax (Kaiser off) Number of params = 13

--------------------------------------------------------------------------
Factor | Variance Difference Proportion Cumulative
-------------+------------------------------------------------------------
Factor1 | 1.19169 0.12344 0.5273 0.5273
Factor2 | 1.06825 . 0.4727 1.0000
--------------------------------------------------------------------------
LR test: independent vs. saturated: chi2(21) = 604.54 Prob>chi2 = 0.0000

Rotated factor loadings (pattern matrix) and unique variances

-------------------------------------------------
Variable | Factor1 Factor2 | Uniqueness
-------------+--------------------+--------------
v01s | 0.5544 -0.0045 | 0.6926
v02s | 0.4777 0.1437 | 0.7512
v03s | 0.5690 -0.1826 | 0.6429
v04s | 0.4956 0.0297 | 0.7535
v05s | -0.1685 0.6367 | 0.5662
v06s | 0.2355 0.5686 | 0.6213
v07s | -0.0536 0.5335 | 0.7125
-------------------------------------------------

Factor rotation matrix

--------------------------------
| Factor1 Factor2
-------------+------------------
Factor1 | 0.9814 -0.1918
Factor2 | 0.1918 0.9814
--------------------------------

Factor loadings
.6

v05s
v06s
v07s
.4
Factor 2
.2

v02s
v04s
v01s
0

v03s
-.2

-.2 0 .2 .4 .6
Factor 1

Rotation: orthogonal varimax


Method: iterated principal factors

50
Ruotiamo la prima estrazione facendo riferimento al metodo delle componenti principali
. quietly factor v01s v02s v03s v04s v05s v06s v07s,pcf
. rotate

Factor analysis/correlation Number of obs = 751


Method: principal-component factors Retained factors = 2
Rotation: orthogonal varimax (Kaiser off) Number of params = 13
--------------------------------------------------------------------------
Factor | Variance Difference Proportion Cumulative
-------------+------------------------------------------------------------
Factor1 | 1.89050 0.19018 0.2701 0.2701
Factor2 | 1.70031 . 0.2429 0.5130
--------------------------------------------------------------------------
LR test: independent vs. saturated: chi2(21) = 604.54 Prob>chi2 = 0.0000

Rotated factor loadings (pattern matrix) and unique variances

-------------------------------------------------
Variable | Factor1 Factor2 | Uniqueness
-------------+--------------------+--------------
v01s | 0.6916 -0.0168 | 0.5213
v02s | 0.6313 0.2015 | 0.5609
v03s | 0.6808 -0.2414 | 0.4783
v04s | 0.6578 0.0322 | 0.5662
v05s | -0.1858 0.7567 | 0.3928
v06s | 0.2811 0.7044 | 0.4248
v07s | -0.0623 0.7289 | 0.4648
-------------------------------------------------

Factor rotation matrix


--------------------------------
| Factor1 Factor2
-------------+------------------
Factor1 | 0.9967 -0.0808
Factor2 | 0.0808 0.9967
--------------------------------

Factor loadings
.8

v05s
v07s
v06s
.6 .4
Factor 2

v02s
.2

v04s
0

v01s
-.2

v03s

-.2 0 .2 .4 .6 .8
Factor 1

Rotation: orthogonal varimax


Method: principal-component factors

51
I risultati ottenuti con i due metodi di estrazione sono pressoché uguali. Il metodo delle componenti principali
sembra comunque proporre una migliore “separazione” delle variabili.
D’ora in avanti considereremo pertanto solo i risultati derivanti da un’estrazione dei fattori con il metodo
delle componenti principali.

Principal Component Solution


Standardized Loadings on Communality Uniqueness
Observed Percent
Variable F1 , bi1 F2 , bi 2 hi2  bi21  bi22 ui2  1  hi2
Variance explained
Y01s 1 0.6916 -0.0168 0.478593 0.521407 0.478593
Y02s 1 0.6313 0.2015 0.439142 0.560858 0.439142
Y03s 1 0.6808 -0.2414 0.521763 0.478237 0.521763
Y04s 1 0.6578 0.0322 0.433738 0.566262 0.433738
Y05s 1 -0.1858 0.7567 0.607117 0.392883 0.607117
Y06s 1 0.2811 0.7044 0.575197 0.424803 0.575197
Y07s 1 -0.0623 0.7289 0.535177 0.464824 0.464824
Overall 7 1.89046a 1.700265a 3.590725 3.409275 0.512961
a Sum of squared loading

Il primo fattore spiega circa il 27% della varianza totale (1.89046/7 = 0.27006)
Il secondo fattore spiega circa il 24% della varianza totale (1.700265/7 = 242895)
Il modello fattoriale (Fattore1 + Fattore2) spiega circa il 51% della varianza totale (51*27+24)

Confronto della matrice osservata con quella riprodotta

Matrice riprodotta
. mat FL=e(L)
. mat list FL

FL[7,2]
Factor1 Factor2
v01s .6907388 .03918527
v02s .61294534 .2518378
v03s .69803427 -.18556374
v04s .65306204 .0852766
v05s -.24637454 .73924753
v06s .22327431 .72482344
v07s -.1209917 .72148199

. mat CD=FL*FL'

. mat list CD

symmetric CD[7,7]
v01s v02s v03s v04s v05s v06s v07s
v01s .47865558
v02s .43325346 .43912426
v03s .47488799 .38112489 .52168575
v04s .45443688 .4217672 .44003544 .43376212
v05s -.14121284 .03515635 -.30915541 -.09785734 .60718733
v06s .18262663 .31939289 .02135217 .20762246 .48081484 .57522044
v07s -.0553022 .10753514 -.21833725 -.01748955 .56316306 .49593272 .53517525

52
Matrice osservata

. corr v01s v02s v03s v04s v05s v06s v07s


(obs=751)

| v01s v02s v03s v04s v05s v06s v07s


-------------+---------------------------------------------------------------
v01s | 1.0000
v02s | 0.2033 1.0000
v03s | 0.3365 0.2439 1.0000
v04s | 0.2939 0.2967 0.2459 1.0000
v05s | -0.1003 -0.0353 -0.2197 -0.0123 1.0000
v06s | 0.1581 0.2012 0.0443 0.0797 0.3327 1.0000
v07s | -0.0372 0.0947 -0.1317 -0.0412 0.3447 0.2845 1.0000

. mat C=r(C)

Differenza

. mat DIFF=C-CD
. mat list DIFF

symmetric DIFF[7,7]
v01s v02s v03s v04s v05s v06s v07s
v01s .52134442
v02s -.22997736 .56087574
v03s -.13836633 -.13725281 .47831425
v04s -.16051992 -.12504079 -.19409904 .56623788
v05s .04087441 -.07048808 .08950245 .08560596 .39281267
v06s -.02452173 -.11818251 .02292179 -.12790153 -.14807166 .42477956
v07s .01809942 -.01285477 .08665294 -.02370474 -.21844186 -.21143202 .46482475

Gli elementi non appartenenti alla diagonale non raggiungono valori elevati a dimostrazione di un sufficiente
adattamento.
La matrice differenza può ottenersi, in Stata, direttamente con il comando “estat residual”.

Punteggi Fattoriali

. predict f1 f2
(regression scoring assumed)

Scoring coefficients (method = regression; based on varimax rotated factors)

----------------------------------
Variable | Factor1 Factor2
-------------+--------------------
v01s | 0.36580 -0.00652
v02s | 0.33493 0.12156
v03s | 0.35896 -0.13867
v04s | 0.34814 0.02213
v05s | -0.09465 0.44419
v06s | 0.15211 0.41567
v07s | -0.02944 0.42842
----------------------------------

53
Analisi della rotazione

. rotate
. . .
. . .

Factor rotation matrix

--------------------------------
| Factor1 Factor2
-------------+------------------
Factor1 | 0.9967 -0.0808
Factor2 | 0.0808 0.9967
--------------------------------

  sin 1  0.0808   4.63


  cos 1  0.997   4.63

 cos -sin 
Rotation matrix  
 sin cos 

54
Esempio 1

. use http://www.ats.ucla.edu/stat/stata/output/m255, clear

. factor item13-item24, ipf factor(3)


(obs=1365)

Factor analysis/correlation Number of obs = 1365


Method: iterated principal factors Retained factors = 3
Rotation: (unrotated) Number of params = 33

--------------------------------------------------------------------------
Factor | Eigenvalue Difference Proportion Cumulative
-------------+------------------------------------------------------------
Factor1 | 5.85150 5.04464 0.8336 0.8336
Factor2 | 0.80687 0.44540 0.1149 0.9485
Factor3 | 0.36146 0.23001 0.0515 1.0000
Factor4 | 0.13146 0.07619 0.0187 1.0187
Factor5 | 0.05527 0.02362 0.0079 1.0266
Factor6 | 0.03164 0.02946 0.0045 1.0311
Factor7 | 0.00218 0.00658 0.0003 1.0314
Factor8 | -0.00440 0.01466 -0.0006 1.0308
Factor9 | -0.01906 0.02688 -0.0027 1.0281
Factor10 | -0.04594 0.01440 -0.0065 1.0215
Factor11 | -0.06035 0.03050 -0.0086 1.0129
Factor12 | -0.09084 . -0.0129 1.0000
--------------------------------------------------------------------------
LR test: independent vs. saturated: chi2(66) = 8683.10 Prob>chi2 = 0.0000

Factor loadings (pattern matrix) and unique variances

-----------------------------------------------------------
Variable | Factor1 Factor2 Factor3 | Uniqueness
-------------+------------------------------+--------------
item13 | 0.7134 -0.3987 0.0923 | 0.3236
item14 | 0.7032 -0.3391 0.0978 | 0.3810
item15 | 0.7212 -0.2450 0.1057 | 0.4086
item16 | 0.6478 -0.1890 0.1114 | 0.5322
item17 | 0.7831 -0.0734 0.0667 | 0.3770
item18 | 0.7395 0.3448 0.1129 | 0.3216
item19 | 0.6165 0.4159 0.1551 | 0.4228
item20 | 0.5501 0.2392 0.0932 | 0.6315
item21 | 0.7317 0.1168 0.0007 | 0.4509
item22 | 0.6128 0.2609 -0.0228 | 0.5559
item23 | 0.8194 -0.0262 -0.3454 | 0.2086
item24 | 0.6952 0.0183 -0.3873 | 0.3665
-----------------------------------------------------------

. rotate, varimax horst

Factor analysis/correlation Number of obs = 1365


Method: iterated principal factors Retained factors = 3
Rotation: orthogonal varimax (Kaiser on) Number of params = 33

--------------------------------------------------------------------------
Factor | Variance Difference Proportion Cumulative
-------------+------------------------------------------------------------
Factor1 | 2.94943 0.29428 0.4202 0.4202
Factor2 | 2.65516 1.23992 0.3782 0.7984
Factor3 | 1.41524 . 0.2016 1.0000
--------------------------------------------------------------------------
LR test: independent vs. saturated: chi2(66) = 8683.10 Prob>chi2 = 0.0000

NOTE: The horst option on the rotate command standardizes the initial factor loadings for each variable to
have a length of one before the rotation is made.

55
Rotated factor loadings (pattern matrix) and unique variances

-----------------------------------------------------------
Variable | Factor1 Factor2 Factor3 | Uniqueness
-------------+------------------------------+--------------
item13 | 0.7714 0.1740 0.2260 | 0.3236
item14 | 0.7256 0.2130 0.2171 | 0.3810
item15 | 0.6756 0.2950 0.2187 | 0.4086
item16 | 0.5908 0.2926 0.1820 | 0.5322
item17 | 0.5867 0.4461 0.2825 | 0.3770
item18 | 0.2865 0.7386 0.2255 | 0.3216
item19 | 0.1702 0.7281 0.1343 | 0.4228
item20 | 0.2278 0.5396 0.1594 | 0.6315
item21 | 0.4020 0.5333 0.3210 | 0.4509
item22 | 0.2178 0.5584 0.2913 | 0.5559
item23 | 0.4488 0.3769 0.6692 | 0.2086
item24 | 0.3235 0.3205 0.6528 | 0.3665
-----------------------------------------------------------

Factor rotation matrix

-----------------------------------------
| Factor1 Factor2 Factor3
-------------+---------------------------
Factor1 | 0.6584 0.6121 0.4381
Factor2 | -0.6840 0.7294 0.0088
Factor3 | 0.3141 0.3055 -0.8989
-----------------------------------------

. rotate, varimax horst blanks(.3)

Factor analysis/correlation Number of obs = 1365


Method: iterated principal factors Retained factors = 3
Rotation: orthogonal varimax (Kaiser on) Number of params = 33

--------------------------------------------------------------------------
Factor | Variance Difference Proportion Cumulative
-------------+------------------------------------------------------------
Factor1 | 2.94943 0.29428 0.4202 0.4202
Factor2 | 2.65516 1.23992 0.3782 0.7984
Factor3 | 1.41524 . 0.2016 1.0000
--------------------------------------------------------------------------
LR test: independent vs. saturated: chi2(66) = 8683.10 Prob>chi2 = 0.0000

Rotated factor loadings (pattern matrix) and unique variances

-----------------------------------------------------------
Variable | Factor1 Factor2 Factor3 | Uniqueness
-------------+------------------------------+--------------
item13 | 0.7714 | 0.3236
item14 | 0.7256 | 0.3810
item15 | 0.6756 | 0.4086
item16 | 0.5908 | 0.5322
item17 | 0.5867 0.4461 | 0.3770
item18 | 0.7386 | 0.3216
item19 | 0.7281 | 0.4228
item20 | 0.5396 | 0.6315
item21 | 0.4020 0.5333 0.3210 | 0.4509
item22 | 0.5584 | 0.5559
item23 | 0.4488 0.3769 0.6692 | 0.2086
item24 | 0.3235 0.3205 0.6528 | 0.3665
-----------------------------------------------------------
(blanks represent abs(loading)<.3)

56
Factor rotation matrix

-----------------------------------------
| Factor1 Factor2 Factor3
-------------+---------------------------
Factor1 | 0.6584 0.6121 0.4381
Factor2 | -0.6840 0.7294 0.0088
Factor3 | 0.3141 0.3055 -0.8989
-----------------------------------------

. rotate, promax horst blanks(.3)

Factor analysis/correlation Number of obs = 1365


Method: iterated principal factors Retained factors = 3
Rotation: oblique promax (Kaiser on) Number of params = 33

--------------------------------------------------------------------------
Factor | Variance Proportion Rotated factors are correlated
-------------+------------------------------------------------------------
Factor1 | 4.86265 0.6927
Factor2 | 4.52052 0.6440
Factor3 | 4.30842 0.6138
--------------------------------------------------------------------------
LR test: independent vs. saturated: chi2(66) = 8683.10 Prob>chi2 = 0.0000

Rotated factor loadings (pattern matrix) and unique variances

-----------------------------------------------------------
Variable | Factor1 Factor2 Factor3 | Uniqueness
-------------+------------------------------+--------------
item13 | 0.8518 | 0.3236
item14 | 0.7855 | 0.3810
item15 | 0.6969 | 0.4086
item16 | 0.6044 | 0.5322
item17 | 0.5087 | 0.3770
item18 | 0.7626 | 0.3216
item19 | 0.8200 | 0.4228
item20 | 0.5541 | 0.6315
item21 | 0.4298 | 0.4509
item22 | 0.5265 | 0.5559
item23 | 0.7187 | 0.2086
item24 | 0.7502 | 0.3665
-----------------------------------------------------------
(blanks represent abs(loading)<.3)

Factor rotation matrix

-----------------------------------------
| Factor1 Factor2 Factor3
-------------+---------------------------
Factor1 | 0.8977 0.8593 0.8479
Factor2 | -0.4157 0.4864 0.0071
Factor3 | 0.1462 0.1581 -0.5301
-----------------------------------------

. estat common

Correlation matrix of the promax(3) rotated common factors

--------------------------------------------
Factors | Factor1 Factor2 Factor3
-------------+------------------------------
Factor1 | 1
Factor2 | .5923 1
Factor3 | .6807 .6482 1
--------------------------------------------

57
. predict score
(regression scoring assumed)

Scoring coefficients (method = regression; based on promax(3) rotated factors)

--------------------------------------------
Variable | Factor1 Factor2 Factor3
-------------+------------------------------
item13 | 0.30701 -0.05274 0.01522
item14 | 0.23187 -0.02300 0.00409
item15 | 0.19464 0.02550 -0.00177
item16 | 0.12756 0.03421 0.01652
item17 | 0.16385 0.10233 0.04530
item18 | 0.00680 0.34287 0.01295
item19 | -0.01929 0.27546 -0.01834
item20 | 0.00997 0.12150 0.00547
item21 | 0.05229 0.14149 0.06787
item22 | -0.00287 0.13644 0.06161
item23 | 0.08324 0.04929 0.53875
item24 | 0.01009 0.02510 0.31405
--------------------------------------------

58
Esempio 2 (con richiami teorici)

INTRODUCTION
Factor analysis is a method for investigating whether a number of variables of interest Y1, Y2, . . . , YP, are
linearly related to a smaller number of unobservable factors F1, F2, . . . , Fk . (k < P)
The fact that the factors are not observable disquali¯es regression and other methods previously examined.
We shall see, however, that under certain conditions the hypothesized factor model has certain mplications,
and these implications in turn can be tested against the observations. Exactly what these conditions and
implications are, and how the model can be tested, must be explained with some care.

AN EXAMPLE
Factor analysis is best explained in the context of a simple example. Students entering a certain MBA
program must take three required courses in finance, marketing and business policy. Let Y1, Y2, and Y3,
respectively, represent a student's grades in these courses. The available data consist of the grades of five
students (in a 10-point numerical scale above the passing mark), as shown in Table 2.1.

Tab. 2.1

Student Grades
Student Grades in:
N. Finance, Y1 Marketing, Y2 Policy, Y3
1 3 6 5
2 7 3 3
3 10 9 8
4 3 9 7
5 10 6 5

It has been suggested that these grades are functions of two underlying factors, F1 and F2, tentatively and
rather loosely described as quantitative ability and verbal ability, respectively. It is assumed that each Y
variable is linearly related to the two factors, as follows:

Y1  10  11 F1  12 F2  e1


Y2   20   21 F1   22 F2  e2 (1.13)
Y3  30  31 F1   32 F2  e3

The error terms e1, e2, and e3, serve to indicate that the hypothesized relationships are not exact.
In the special vocabulary of factor analysis, the parameters  ij are referred to as loadings. For example, 12
is called the loading of variable Y1 on factor F2.
In this MBA program, finance is highly quantitative, while marketing and policy have a strong qualitative
orientation. Quantitative skills should help a student in finance, but not in marketing or policy. Verbal skills
should be helpful in marketing or policy but not in finance. In other words, it is expected that the loadings
have roughly the following structure:

Factor Loadings
Variable F1 F2
Y1 + 0
Y2 0 +
Y3 0 +

59
The grade in the finance course is expected to be positively related to quantitative ability but unrelated to
verbal ability; the grades in marketing and policy, on the other hand, are expected to be positively related to
verbal ability but unrelated to quantitative ability. Of course, the zeros in the preceding table are not
expected to be exactly equal to zero. By `0' we mean approximately equal to zero and by `+' a positive number
substantially different from zero.
It may appear that the loadings can be estimated and the expectations tested by regressing each Y against
the two factors.
Such an approach, however, is not feasible because the factors cannot be observed.
An entirely new strategy is required.

Let us turn to the process that generates the observations on Y1, Y2 and Y3 according to (1.13). The simplest
model of factor analysis is based on two assumptions concerning the relationships (1.13).
We shall first describe these assumptions and then examine their implications.

1. The error terms ei are independent of one another, and such that
E  ei   0 Var  ei    i2
One can think of each ei as the outcome of a random draw with replacement from a population of
ei -values having mean 0 and a certain variance. A similar assumption was made in regression
analysis.

2. The unobservable factors Fj are independent of one another and of the error terms, and are such
that E  Fj   0 and Var  F j   1
In the context of the present example, this means in part that there is no relationship between
quantitative and verbal ability. In more advanced models of factor analysis, the condition that the
factors are independent of one another can be relaxed. As for the factor means and variances, the
assumption is that the factors are standardized. It is an assumption made for mathematical
convenience; since the factors are not observable, we might as well think of them as measured in
standardized form.

Let us now examine some implications of these assumptions.


Each observable variable is a linear function of independent factors and error terms, and can be written as

Yi   i 0   i1 F1   i 2 F2  ei
The variance of Yi is:
Var Yi   i21Var  F1   i22 F2  1 Var  ei 
2

 i21  i22   i2

We see that the variance of Yi consists of two parts:

Var Yi   i21   i22  i2


 
communality specific variance

The first, the communality of the variable, is the part that is explained by the common factors F1 and F2. The
second, the specific variance, is the part of the variance of Yi that is not accounted by the common factors. If
the two factors were perfect predictors of grades, then e1  e2  e3  0 always,  12   22   32  0 .

60
To calculate the covariance of any two observable variables, Yi and Yj , we can write:

Yi   i 0   i1 F1   i 2 F2  1 ei   0  e j
Y j   j 0   j1 F1   j 2 F2   0  ei  1 e j
and then:

Cov Yi , Y j    i1 j1Var  F1   i 2  j 2Var  F2   1 0 Var  ei    0 1Var  e j 


Cov Yi , Y j   i1 j1  i 2  j 2

We can arrange all the variances and covariances in the form of the following table:

Y1 Y2 Y3
Y1    
2
11
2
12
2
1
 21 11   22 12  31 11   32 12
Y2  21 11   22 12  212  222   22  21  31   22  32
Y3  31 11   32 12  21  31   22  32 312  322   32

We have placed the variances of the Y variables in the diagonal cells of the table and the covariances off the
diagonal. These are the variances and covariances implied by the model's assumptions. We shall call this
table the theoretical variance covariance matrix. The matrix is symmetric, in the sense that the entry in row
1 and column 2 is the same as that in row 2 and column 1, and so on.

Let us now turn to the available data. Given observations on the variables Y1, Y2, and Y3, we can calculate the
observed variances and covariances of the variables, and arrange them in the observed variance covariance
matrix:

Y1 Y2 Y3
Y1 S12 S12 S13
Y2 S21 S22 S23
Y3 S31 S32 S32

Thus, S12 is the observed variance of Y1, S12 the observed covariance of Y1 and Y2, and so on. It is understood,
of course, the S12 = S21, S13 =S31, and so on; the matrix, in other words, is symmetric. It can be easily confirmed
that the observed variance covariance matrix for the data of Table 2.1 is as follows:

. corr Y1 Y2 Y3,covariance
(obs=5)

| Y1 Y2 Y3
-------------+---------------------------
Y1 | 12.3
Y2 | -.45 6.3
Y3 | .55 4.8 3.8

61
On the one hand, therefore, we have the observed variances and covariances of the variables; on the other,
the variances and covariances implied by the factor model. If the model's assumptions are true, we should
be able to estimate the loadings  ij so that the resulting estimates of the theoretical variances and
covariances are close to the observed ones. We shall soon see how these estimates can be obtained, but first
let us examine an important feature of the factor model.

Factor Loadings are not unique


We would like to demonstrate that the loadings are not unique, that is, that there exist an infinite number
of sets of values of the  ij yielding the same theoretical variances and covariances. Consider first an arbitrary
set of loadings defining what we shall call Model A:

Y1  0.5F1  0.5F2  e1
Y1  0.3F1  0.3F2  e2
Y1  0.5F1  0.5F2  e3

It is not difficult to verify that the theoretical variance covariance matrix is:

 0.5   12 0.3 0 
 
 0.3 0.18   22 0 
 0 0 0.5   32 

For example:
Var Y1    0.5    0.5    12  0.5   12
2 2

Cov Y1 , Y2    0.5  0.3   0.5  0.3  0.3


Next, consider Model B, having a different set of  ij
Y1  2 2 F  0F  e
1 2 1

Y   0.3 2  F  0 F  e
1 1 2 2

Y  0F   2 2  F  e
1 1 2 3

It can again be easily confirmed that the theoretical variances and covariances are identical to those of Model
A.
For example:
 
2
Var Y1   2 2   12  0.5   12

Cov Y1 , Y2    
2 2 0.3 2  0  0.3 
Examine now panel (a) of Figure 2.1. Along the horizontal axis we plot the coefficient of F1, and along the
vertical axis the coefficient of F2 for each equation of Model A. The coefficients of F1 and F2 in the first
equation are plotted as the point with coordinates (0.5, 0.5); those of the second equation as the point (0.3,
0.3), and those of the third as the point (0.5,-0.5).

62
63
64
Imagine rotating the coordinate axes anticlockwise by 45± as shown in Figure 2.1(b) to arrive at the new
coordinate axes indicated by the dotted lines.
The coordinates of the three points with respect to the new axes can be calculated. For example, as illustrated
in Figure 2.1(c), the point with original coordinates (0.5, 0.5) now has coordinates (0.3 2 , 0).

The new coordinates for all three points are shown in Figure 2.1(d).
We see that the loadings of Model B are the result of applying to the loadings of Model A the rotation
described above. It can be shown that any other rotation of the original loadings will produce a new set of
loadings with the same theoretical variances and covariances as those of the original model. The number of
such rotations is, of course, infinite large.
Rather than being a disadvantage, this property of the factor model is put to good use in practice. Recall that
there are usually some prior expectations concerning the loadings. In particular, it is expected that some
loadings will be close to zero, while others will be positive or negative and substantially different from zero.
For this reason, factor analysis usually proceeds in two stages.
In the first, one set of loadings  ij is calculated which yields theoretical variances and covariances that fit the
observed ones as closely as possible according to a certain criterion. These loadings, however, may not agree
with the prior expectations, or may not lend themselves to a reasonable interpretation.
Thus, in the second stage, the first loadings are “rotated" in an effort to arrive at another set that fit equally
well the observed variances and covariances, but are more consistent with prior expectations or more easily
interpreted.

Suppose, for example, that the loadings of Model A happened to be the estimates producing the best fit. All
the loadings are of the same order of magnitude, and suggest that all variables depend on the same two
factors.
The loadings of Model B, however, fit the observed variances and covariances equally well and indicate clearly
that Y1 and Y2 depend on one factor only, while Y3 depends on the other factor only.

First Factor Solution


Perhaps the most widely used method for determining a first set of loadings is the principal component
method. This method seeks values of the loadings that bring the estimate of the total communality as close
as possible to the total of the observed variances. The covariances are ignored. Table 2.2 shows (for the
example of this chapter) the elements of the factor model on which the principal component method
concentrates.

Tab. 2.2

Elements of Principal Component Method


Observed Communality
Variable Yi variance, Si2 i21  i22
Finance grade, Y1 S12 112  122
Marketing grade, Y2 S 22  212   222
Policy grade, Y3 S32 312  322
Total T0 Tt

65
The communality, it will be recalled, is the part of the variance of the variable that is explained by the factors.
The larger this part, the more successful the postulated factor model can be said to be in explaining the
variable. The principal component method determines the values of the  ij which make the total
communality (Tt in Table 2.2) approximate as closely as possible the sum of the observed variances of the
variables ( T0 in Table 2.2).
All major statistical programs implement the principal component method. The solution for the example of
this chapter (data of Table 2.1) is shown in Table 2.3

Having the total communality approximate as closely as possible the sum of the observed variances (in effect,
attaching the same weight to each variable) makes sense when the Y variables are measured in the same
units, as in the example of this chapter. When this is not so, however, it is clear that the principal component
method will favor the variables with large variances at the expense of those with small ones.
For this reason, it is customary to standardize the variables prior to subjecting them to the principal
component method so that all have mean zero and variance equal to one. This is accomplished by subtracting
from each observation ( Yij ) the mean of the variable ( Yi ) and dividing the result by the standard deviation (
S i ) of the variable to obtain the standardized observation Yij* .
The observations of the standardized variables are shown in the following table:

Tab. 2.3
Y1* Y2* Y3*
-1.026479 -.2390457 -.3077935
.1140532 -1.434274 -1.333772
.9694521 .9561829 1.231174
-1.026479 .9561829 .7181848
.9694521 -.2390457 -.3077935

Remember
Cov Yi * , Y j*   Corr Yi , Y j 

. corr Y1s Y2s Y3s,covariance


(obs=5)

| Y1s Y2s Y3s


-------------+---------------------------
Y1s | 1
Y2s | -.05112 1
Y3s | .080449 .981023 1

. corr Y1 Y2 Y3
(obs=5)

| Y1 Y2 Y3
-------------+---------------------------
Y1 | 1.0000
Y2 | -0.0511 1.0000
Y3 | 0.0804 0.9810 1.0000

66
The principal component solution for standardized variables will not necessarily be the same as that for
unstandardized ones.

In some statistical programs (e.g., SPSS, SAS), standardization and the principal component method are the
default options. The solution for the example of this chapter is shown in Table 2.4.

. factor Y1s Y2s Y3s,pcf factors(2)


(obs=5)

Factor analysis/correlation Number of obs = 5


Method: principal-component factors Retained factors = 2
Rotation: (unrotated) Number of params = 3

Beware: solution is a Heywood case


(i.e., invalid or boundary values of uniqueness)

--------------------------------------------------------------------------
Factor | Eigenvalue Difference Proportion Cumulative
-------------+------------------------------------------------------------
Factor1 | 1.98146 0.97316 0.6605 0.6605
Factor2 | 1.00831 0.99808 0.3361 0.9966
Factor3 | 0.01023 . 0.0034 1.0000
--------------------------------------------------------------------------
LR test: independent vs. saturated: chi2(3) = 12.32 Prob>chi2 = 0.0064

Factor loadings (pattern matrix) and unique variances

-------------------------------------------------
Variable | Factor1 Factor2 | Uniqueness
-------------+--------------------+--------------
Y1s | 0.0299 0.9995 | 0.0001
Y2s | 0.9941 -0.0815 | 0.0051
Y3s | 0.9961 0.0514 | 0.0051
-------------------------------------------------

Tab. 2.4

Principal Component Solution, data in Tab 2.3


Standardized Observed Loadings on Communality Percent
* *2
Variable, Yi Variance , Si F1 , bi1 F2 , bi 2 bi21  bi22 explained
Finance, Y1* 1 0.0299 0.9995 0.999894 99.98943
*
Marketing, Y 2 1 0.9941 -0.0815 0.994877 99.48771
Policy, Y3* 1 0.9961 0.0514 0.994857 99.48572
Overall 3 1.981344a 1.008284a 2.989628 99.65428
a Sum of squared loadings

The verbal ability contributes more than quantitative ability: F1 accounts for 1.981344/3 or about 66%, while
F2 accounts for 1.008284/3 or about 33.6% of the sum of the observed variances. This is why the verbal ability
factor is listed first in the computer output and in the Table 2.4 (the labels F1 and F2 are, of course, arbitrary).
The two factors together explain 2.989628/3 or 99.65% of the sum of the observed variances of the
standardized variables,

67
Adesso vediamo come ottenere i dati di Tab. 2.4 “manualmente” per via matriciale.

. corr Y1s Y2s Y3s


(obs=5)

| Y1s Y2s Y3s


-------------+---------------------------
Y1s | 1.0000
Y2s | -0.0511 1.0000
Y3s | 0.0804 0.9810 1.0000

. mat R=r(C)
. matlist R

| Y1s Y2s Y3s


-------------+---------------------------------
Y1s | 1
Y2s | -.0511199 1
Y3s | .0804486 .9810229 1

. matrix symeigen V L = R
. matrix list L

L[1,3]
e1 e2 e3
r1 1.9814631 1.0083063 .01023054

. mat list L

L[1,3]
e1 e2 e3
r1 1.9814631 1.0083063 .01023054

. mat list V

V[3,3]
e1 e2 e3
Y1s .02122081 .99538347 .09360247
Y2s .70623585 -.08119286 .70330551
Y3s .70765853 .05118071 -.70469847

. mata
-----------------------------------------------
: L=(1.9814631,0,0\0, 1.0083063,0\0,0,.01023054)
: V=(.02122081,.99538347,.09360247\.70623585,-.08119286,.70330551\.70765853,.05118071,-
.70469847)

: L1=sqrt(L)
: A=V*L1
: A
1 2 3
+----------------------------------------------+
1 | .0298713569 .9995088978 .0094675278 |
2 | .9941290254 -.0815293688 .0711366319 |
3 | .9961316531 .0513928316 -.0712775244 |
+----------------------------------------------+

68
Factor Rotation
When the first factor solution does not reveal the hypothesized structure of the loadings, it is customary to
apply rotation in an effort to find another set of loadings that fit the observations equally well but can be
more easily interpreted. As it is impossible to examine all such rotations, computer programs carry out
rotations satisfying certain criteria.
Perhaps the most widely used of these is the varimax criterion. It seeks the rotated loadings that maximize
the variance of the squared loadings for each factor; the goal is to make some of these loadings as large as
possible, and the rest as small as possible in absolute value.
The varimax method encourages the detection of factors each of which is related to few variables.
It discourages the detection of factors influencing all variables.
The quartimax criterion, on the other hand, seeks to maximize the variance of the squared loadings for each
variable, and tends to produce factors with high loadings for all variables.

We show the output produced by the Stata program, instructed to apply the varimax rotation to the first set
of loadings.

. rotate, varimax

Factor analysis/correlation Number of obs = 5


Method: principal-component factors Retained factors = 2
Rotation: orthogonal varimax (Kaiser off) Number of params = 3
Beware: solution is a Heywood case
(i.e., invalid or boundary values of uniqueness)
--------------------------------------------------------------------------
Factor | Variance Difference Proportion Cumulative
-------------+------------------------------------------------------------
Factor1 | 1.98096 0.97216 0.6603 0.6603
Factor2 | 1.00881 . 0.3363 0.9966
--------------------------------------------------------------------------
LR test: independent vs. saturated: chi2(3) = 12.32 Prob>chi2 = 0.0064

Rotated factor loadings (pattern matrix) and unique variances


-------------------------------------------------
Variable | Factor1 Factor2 | Uniqueness
-------------+--------------------+--------------
Y1s | 0.0072 0.9999 | 0.0001
Y2s | 0.9957 -0.0590 | 0.0051
Y3s | 0.9947 0.0740 | 0.0051
-------------------------------------------------

Factor rotation matrix


--------------------------------
| Factor1 Factor2
-------------+------------------
Factor1 | 0.9997 0.0227
Factor2 | -0.0227 0.9997
--------------------------------

Tab. 2.5
Principal Component Rotated Solution, data in Tab 2.3
Standardized Observed Loadings on Communality Percent
*
Variable, Yi Variance , Si*2
F1 , bi1 F2 , bi 2 bi21  bi22 explained
Finance, Y1* 1 0.0072 0.9995 0.999052 99.90521
*
Marketing, Y 2 1 0.9957 -0.0590 0.994899 99.48995
*
Policy, Y
3 1 0.9947 0.0740 0.994904 99.49041
Overall 3 1.980898 a
1.007957 a
2.988856 99.62852
a Sum of squared loadings

69
This output is translated and interpreted in Table 2.5.
The estimates of the communality of each variable and of the total communality are the same as in Table
2.4, but the contributions of each factor differ slightly. In this example, rotation did not alter appreciably the
first estimates of the loadings or the proportions of the sum of the observed variances explained by the two
factors.

70

Potrebbero piacerti anche