lavaan: multigroup SEM Fehlermeldung

Allgemeine Statistik mit R, die Test-Methode ist noch nicht bekannt, ich habe noch keinen Plan!

Moderatoren: EDi, jogo

Antworten
electricEH
Beiträge: 19
Registriert: Sa Mär 16, 2019 11:46 am

lavaan: multigroup SEM Fehlermeldung

Beitrag von electricEH »

Hallo zusammen,

ich möchte in meinem Strukturgleichungsmodell auch für Geschlecht (nominale Variable mit Ausprägungen Mann, Frau und divers) kontrollieren und dafür wollte ich die Variable gender einfach als Gruppenvariable in einem multigroup-SEM aufnehmen. Etwa so:
modelgesamtgender <-'
mbi =~ mbipac1+mbipac2+mbipac3
ip =~ ippac1+ippac2+ippac3
ipsm =~ ipsmpac1+ipsmpac2+ipsmpac3
parentshort =~ pqspac1+pqspac2+pqspac3
saps =~ sapspac1+sapspac2+sapspac3

mbi ~ ipsm+ip+parentshort+saps
'
fitgesamtgender <- sem(model=modelgesamtgender, data= data_eh, group="gender")
summary(fitgesamtgender, standardized=T, fit.measures=T)
Das gleiche Modell ohne gender funktioniert super, wenn ich das aber hinzufüge kommt als Fehlermeldung:
> fitgesamtgender <- sem(model=modelgesamtgender, data= data_eh, group="gender")
Error in lav_samplestats_icov(COV = cov[[g]], ridge = ridge, x.idx = x.idx[[g]], :
lavaan ERROR: sample covariance matrix is not positive-definite
In addition: Warning message:
In lav_data_full(data = data, group = group, cluster = cluster, :
lavaan WARNING: small number of observations (nobs < nvar) in group 1
nobs = 2 nvar = 15
> summary(fitgesamtgender, standardized=T, fit.measures=T)
Error in summary(fitgesamtgender, standardized = T, fit.measures = T) :
object 'fitgesamtgender' not found
Das gleiche kommt wenn ich cfs statt sem rechne. Hat jemand eine Idee, woran das liegen kann?
Viele Grüße,
Elisa
Benutzeravatar
EDi
Beiträge: 1599
Registriert: Sa Okt 08, 2016 3:39 pm

Re: lavaan: multigroup SEM Fehlermeldung

Beitrag von EDi »

lavaan WARNING: small number of observations (nobs < nvar) in group 1
nobs = 2 nvar = 15
Das eine Geschlecht hat nur 2 Beobachtungen? Mit einem n=2 kann man nicht viel rechnen...
Bitte immer ein reproduzierbares Minimalbeispiel angeben. Meinungen gehören mir und geben nicht die meines Brötchengebers wieder.

Dieser Beitrag ist lizensiert unter einer CC BY 4.0 Lizenz
Bild.
electricEH
Beiträge: 19
Registriert: Sa Mär 16, 2019 11:46 am

Re: lavaan: multigroup SEM Fehlermeldung

Beitrag von electricEH »

Ja, das sind die divers-Fälle, aber soweit ich das verstanden habe, ist das nur eine Warnung und nicht der Grund, warum es nicht funktioniert, oder? Wenn doch, kann ich dem Modell irgendwie sagen, dass er diese beiden Fälle rauslassen soll, also nur die beiden Gruppen Mann und Frau vergleichen soll?
Benutzeravatar
EDi
Beiträge: 1599
Registriert: Sa Okt 08, 2016 3:39 pm

Re: lavaan: multigroup SEM Fehlermeldung

Beitrag von EDi »

Wenn doch, kann ich dem Modell irgendwie sagen, dass er diese beiden Fälle rauslassen soll, also nur die beiden Gruppen Mann und Frau vergleichen soll?
Wirf die Fälle doch mal aus deinem Datensatz raus...
Bitte immer ein reproduzierbares Minimalbeispiel angeben. Meinungen gehören mir und geben nicht die meines Brötchengebers wieder.

Dieser Beitrag ist lizensiert unter einer CC BY 4.0 Lizenz
Bild.
jogo
Beiträge: 2086
Registriert: Fr Okt 07, 2016 8:25 am

Re: lavaan: multigroup SEM Fehlermeldung

Beitrag von jogo »

electricEH hat geschrieben: Di Apr 30, 2019 6:40 pm Ja, das sind die divers-Fälle, aber soweit ich das verstanden habe, ist das nur eine Warnung und nicht der Grund, warum es nicht funktioniert, oder? Wenn doch, kann ich dem Modell irgendwie sagen, dass er diese beiden Fälle rauslassen soll, also nur die beiden Gruppen Mann und Frau vergleichen soll?
Bei der Beurteilung der Wertigkeit von Fehlermeldungen muss man R umdenken. R ist in der Ausführung gutmütiger als andere Laufzeitsysteme. R versucht, soweit es geht weiterzuarbeiten. Bei anderen Laufzeitumgebungen würde direkt ein Abbruch erfolgen.
Als Beleg für diese These möchte ich die Warnmeldung "condition-length-greater-than-1" anführen:
https://stackoverflow.com/questions/213 ... ter-than-1
Bei dieser Warnmeldung ist anzunehmen, dass bei der Programmierung ein wesentlicher logischer Irrtum vorliegt.
Ein Abbruch wäre durchaus gerechtfertigt, R arbeitet trotzdem weiter. Deshalb soll man Warnmeldungen in R nicht ignorieren wie in anderen Laufzeitsystemen - aber auch dort sollte man die Ursache der Warnung ergründen, um auszuschließen, dass die Ursache ein größeres Problem darstellt.

Gruß, Jörg
electricEH
Beiträge: 19
Registriert: Sa Mär 16, 2019 11:46 am

Re: lavaan: multigroup SEM Fehlermeldung

Beitrag von electricEH »

Okay, das funktioniert tatsächlich, wenn ich die beiden Fälle rauswerfe. Vielen Dank euch, ich hab das tatsächlich nur als Warnung und nicht als Grund verstanden, warum es nicht geklappt hat.
Antworten