Konfirmatorische Faktorenanalyse in R / RStudio

In diesem Tutorial zeigen wir Schritt für Schritt anhand eines Beispiels aus der Psychologie, wie sich mit R oder RStudio eine konfirmatorische Faktorenanalyse (CFA) berechnen lässt. Wir verwenden dafür das Paket lavaan.

 

Bevor wir mit der Analyse beginnen, muss das Paket zunächst installiert werden. Neben lavaan benötigen wir zusätzlich das Paket psych. Um die beiden Pakete zu installieren und zu aktivieren, geben Sie die folgenden Befehle in die R-Konsole ein:

 

install.packages("lavaan")

install.packages("psych")

library(lavaan)

library(psych)

 

Die Pakete sind nun einsatzbereit.

 

Wir führen die Analyse mit dem Beispieldatensatz bfi durch. Dieser Datensatz enthält Umfrage-Ergebnisse des BIG-FIVE Fragebogens. Dies ist ein sehr bekannter Fragebogen, mit dem die 5 wichtigsten Persönlichkeitseigenschaften (Extraversion, Offenheit, Verträglichkeit, Gewissenhaftigkeit, Neurotizismus) erhoben werden.

Wir sehen uns den Datensatz zunächst an. Geben Sie dazu den folgenden Befehl ein:

 

View(bfi)

 

Das Fenster für die Datenansicht ist nun geöffnet, und der Datensatz sieht folgendermaßen aus:

 

 

Die Spalten A1 bis A5 sind die 5 Items, mit denen die Persönlichkeitseigenschaft Agreeableness (Verträglichkeit) erhoben wurde. Die Spalten C1 bis C5 enthalten die 5 Items der Eigenschaft Conscientiousness (Gewissenhaftigkeit), E1 bis E5 stehen für Extraversion,  N1 bis N5 stehen für Neurotizismus und O1 bis O5 für Offenheit. In der Tabelle sind Zahlen von 1 bis 6 enthalten. Das bedeutet, dass die Items auf einer 6-stufigen Likert-Skala erhoben wurden (z.B. 1=stimme nicht zu, 2=stimme kaum zu, 3=stimme weniger zu, 4=stimme eher zu, 5=stimme stark zu, 6=stimme voll und ganz zu).  Aus theoretischer Sicht enthält dieser Fragebogen also 5 Faktoren (die Big 5), wobei jeder Faktor mit 5 Items gemessen wird. Anmerkung: Ein Faktor wird manchmal auch als latente Variable bezeichnet. 

 

CFA berechnen in R

Wir möchten nun eine konfirmatorische Faktorenanalyse  durchführen um zu überprüfen, ob die 5 theoretisch vorhandenen Faktoren Verträglichkeit, Gewissenhaftigkeit, Extraversion, Neurotizismus und Offenheit sich empirisch im Datensatz bestätigen lassen. Um das Faktorenmodell in R zu definieren, geben Sie den folgenden Code ein:

 

model <- '
A =~ A1 + A2 + A3 + A4 + A5
C =~ C1 + C2 + C3 + C4 + C5
E =~ E1 + E2 + E3 + E4 + E5
N =~ N1 + N2 + N3 + N4 + N5
O =~ O1 + O2 + O3 + O4 + O5'

 

Mit diesem Code definieren wir in R, dass wir die 5 Faktoren A, C, E, N und O in den Daten vermuten sowie dass die Items A1 bis A5 zum Faktor A gehören, die Items C1 bis C5 zum Faktor C, etc.

 

CFI, RMSEA und SRMR in R berechnen

Nachdem das Faktorenmodell definiert wurde, benötigen wir nun zur Interpretation die Kennzahlen CFI, RMSEA und SRMR. Um die Kennzahlen zu erhalten, geben Sie dazu die folgenden Befehle ein:

 

fit <- cfa(model, data = bfi)

summary(fit, fit.measures = TRUE, standardized = TRUE)

 

Nach Ausführen des Befehls erhalten Sie einen relativ großen Ergebnis-Output. Scrollen Sie im Output nach oben, bis Sie den folgenden Bereich sehen: 

 

Dieser Bereich enthält die Kennzahlen, die zur Interpretation der CFA benötigt werden, nämlich den CFI (Comparative Fit Index), den RMSEA (Root Mean Square Error of Approximation) und den SRMR (Standardized Root Mean Square Residual). Die Kennzahlen sind in obigem Output gelb markiert.

 

CFI, RMSEA und SRMR Interpretation

Um nun zu prüfen, ob das Faktorenmodell der Big 5 durch die CFA bestätigt wird, betrachten wir CFI, RMSEA und SRMR:

  • Der CFI beträgt CFI=0.782. Dies deutet darauf hin, dass das Faktorenmodell nicht bestätigt werden kann, da hierfür CFI ≥ 0.95 sein müsste.
  • Der RMSEA beträgt RMSEA=0.078. Das bedeutet ebenfalls, dass das Faktorenmodell nicht bestätigt wird, da dafür RMSEA ≤ 0.06 sein müsste.
  • Der SRMR beträgt SRMR=0.075. Das bedeutet, dass das Faktorenmodell bestätigt ist, da dafür SRMR ≤ 0.08.

Zusammengefasst sind also 2 von 3 Kriterien nicht erfüllt, womit das Faktorenmodell nicht bestätigt werden kann. Damit das Modell valide ist, müssten alle 3 Kriterien erfüllt sein, also CFI  0.95 und RMSEA ≤ 0.06 und SRMR ≤ 0.08! 

Dieses Modell dürfte in dieser Form also nicht zur Hypothesentestung in einem Strukturgleichungsmodell weiterverwendet werden. 

 

Nehmen wir z.B. an, Sie haben Hypothesen aufgestellt, wie z.B. "Extraversion hat einen positiven Einfluss auf Gewissenhaftigkeit", dann wäre es nicht erlaubt, diese Hypothese mit einem Strukturgleichungsmodell zu prüfen, da das Modell bisher nicht valide ist. Stattdessen muss das Modell überarbeitet werden, und erst wenn die obigen Kriterien erfüllt sind, kann das Modell zur Hypothesentestung verwendet werden.

 

Folgende Schritte können z.B. unternommen werden, um das Modell zu verbessern: 

  • Zusätzliche Daten erheben
  • Items mit niedriger Ladung identifizieren und entfernen
  • Zuordnung einzelner Items zu Faktoren ändern
  • Das theoretische Faktorenmodell ändern

Sie haben Fragen zu einem dieser Schritte oder generell zur konfirmatorischen Faktorenanalyse oder Strukturgleichungsmodellen in R? Nehmen Sie Kontakt zu uns auf!