Multiple Imputation in genesteten Datensatz

Regressionsmodelle aller Art mit Stata.

Multiple Imputation in genesteten Datensatz

Beitragvon JosefH » Di 30. Nov 2021, 17:14

Hallo,

ich tüftel jetzt schon eine ganze Weile an einem Problem herum und wende mich nun vertrauensvoll an die Mitglieder dieses Forum.

Ich habe einen Datensatz der Rückmeldungen von 310 Schüler*innen (suscode) aus 19 Klassenenthält (lkcode) an 6 Schulen (schulcode). Fehlende Werte auf Ebene der Schüler*innen habe ich mit dem Befehl
Code: Alles auswählen
mi impute mvn
imputiert. Die robuste Regressionsanalyse auf Ebene der Schüler*innen mit dem Befehl
Code: Alles auswählen
mi estimate: rreg
klappt soweit gut.

Ich interessiere mich aber eigentlich für die Analyse auf Ebene der Klassen. Zuvor hatte ich den Datensatz mit
Code: Alles auswählen
collapse varlist, by(schulcode lkcode)
einfach in einen Datensatz mit Mittelwerten konvertiert. Das erscheint mir mit Bezug auf das Verfahren der multiplen Imputation nun nicht mehr sinnvoll. Gibt es eine Möglichkeit innerhalb des imputierten Datensatzes eine robuste Regression nur auf Ebene der Klassen zu berechnen?

Herzliche Grüße und Dank!
Josef
JosefH
 
Beiträge: 3
Registriert: Di 30. Nov 2021, 16:44
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: Multiple Imputation in genesteten Datensatz

Beitragvon Staxa » Mi 1. Dez 2021, 09:13

Das scheint mir eine nicht ganz einfache Frage. Auch bin ich mir nicht sicher, ob ich von deinem ersten Schritt, dem Aggregieren der Daten auf Klassenebene, überzeugt bin. Also ich sehe hier eigentlich nur eine Option. Du nutzt die aktuell imputierten Daten und berechnest ein Multilevelmodell, wobei du Schulen und Klassen dann explizit ohne Aggregation modellieren kannst (mixed). Ausserdem solltest du prüfen, ob eine Imputation mit mvn angemessen ist. chained ist flexibler.
Stata für Anfänger: www.statabook.com
Staxa
 
Beiträge: 459
Registriert: Di 27. Feb 2018, 12:56
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: Multiple Imputation in genesteten Datensatz

Beitragvon JosefH » Di 7. Dez 2021, 15:25

Danke @Staxa für die Antwort. Ich habe jetzt separate multiple Imputation auf beiden Ebenen vorgenommen. Aktuell erlebe ich allerdings das Problem, dass unter Verwendung von
Code: Alles auswählen
mi impute chained (regress) x y = z1-z18, add (40) rseed (53421)
nach der Imputierung immernoch fehlende Werte in den imputierten Datensätzen vorhanden sind. Auch unter Verwendung von
Code: Alles auswählen
mi impute chained (pmm, knn(5)) x y = z1-z18, add (40) rseed (53421)
bleiben diese fehlenden Werte in dem imputierten Datensätzen bestehen. Das hat wiederrum zur Folge, dass ich die Analyse
Code: Alles auswählen
mi estimate: rreg
nicht durchführen kann. Ich erhalte dann immer die Fehlermeldung, dass unterschiedlich viele Samples in den Datensätzen vorliegen. Die die unabhängigen Variablen z1-z18 weisen im beobachteten Datensatz keine fehlenden Werte auf. Weißt jemand zufällig eine Lösung?
JosefH
 
Beiträge: 3
Registriert: Di 30. Nov 2021, 16:44
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: Multiple Imputation in genesteten Datensatz

Beitragvon Staxa » Mi 8. Dez 2021, 09:13

Meine Vermutung ist, dass es in mindestens einer Variable irgendwo einen extended missing value Wert gibt (.a, .b), der dann nicht imputiert wird. Die Vars müssen entweder valid information haben oder sysmiss (.). Das betrifft alle vars, also auch Hilfsvariablen. Das ist zu prüfen. Die Tabelle, die nach der Imputation ausgegeben wird, zeigt dir an, welche Vars nicht imputiert wurden konnten und liefert dir einen Ansatzpunkt. Im Notfall kann man Stata auch zwingen:


Code: Alles auswählen
mi estimate, esampvaryok: reg...
Stata für Anfänger: www.statabook.com
Staxa
 
Beiträge: 459
Registriert: Di 27. Feb 2018, 12:56
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: Multiple Imputation in genesteten Datensatz

Beitragvon JosefH » Do 9. Dez 2021, 12:39

Danke nochmal @Staxa. Ich konnt leide keinen extended missing value Wert finden und musste deshalb auf esampvaryok zurückgreifen.
Ein weiteres Problem das ich jetzt habe ist, dass die Analyse mit den imputierten Datensätzen völlig andere p-Werte ergibt, als die vorherige Analyse, bei denen die Missings per Mean-Imputation ersetzt wurden. Mir leuchtet ein, dass dies passieren kann. Angesichts des recht kleinen Anteils an Missings von 13% war ich aber doch überrascht. Meine Frage ist nun, ob ein derartig starker Einfluss auf die Analyse normal ist oder ob ich vielleicht doch nochmal mein Imputationsmodell ändern sollte....
JosefH
 
Beiträge: 3
Registriert: Di 30. Nov 2021, 16:44
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: Multiple Imputation in genesteten Datensatz

Beitragvon Staxa » Fr 10. Dez 2021, 09:08

Imputation ist ein großes Forschungsgebiet und du wirst nicht herum kommen, dich in die Literatur einzuarbeiten. Einige gute Startpunkte findest du hier.

https://www.amazon.de/Missing-Quantitat ... 036&sr=8-1
https://www.amazon.de/Flexible-Imputati ... 057&sr=8-3
https://pubmed.ncbi.nlm.nih.gov/21499542/
https://stats.idre.ucla.edu/stata/semin ... a_pt1_new/

Insgesamt ist das Ergebnis aber nicht sehr überraschend, da eine reine Imputation durch Mittelwerte bereits seit Jahrzehnten als unzureichend gilt und Variation systematisch unterschätzt. Je nachdem, was du mit den Forschungsergebnissen vor hast, solltest du dir neuere Verfahren (wie eben MICE) genauer ansehen und auch die Diagnostiken.
Stata für Anfänger: www.statabook.com
Staxa
 
Beiträge: 459
Registriert: Di 27. Feb 2018, 12:56
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post


Zurück zu Regressionsmodelle

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast