Wielokrotna imputacja dla zmiennych wynikowych

19

Mam zbiór danych na temat prób rolnych. Moja zmienna odpowiedzi to stosunek odpowiedzi: log (leczenie / kontrola). Interesuje mnie, co pośredniczy w różnicy, więc prowadzę meta-regresje RE (nieważone, ponieważ wydaje się całkiem jasne, że wielkość efektu nie jest skorelowana z wariancją szacunków).

Każde badanie podaje plon ziarna, plon biomasy lub jedno i drugie. Nie mogę przypisać plonu ziarna na podstawie badań, które podają same plony biomasy, ponieważ nie wszystkie badane rośliny były przydatne do ziarna (na przykład trzcina cukrowa). Ale każda roślina, która produkowała zboże, miała także biomasę.

W przypadku brakujących zmiennych towarzyszących stosowałem iteracyjną regresję (zgodnie z rozdziałem podręcznika Andrew Gelmana). Wydaje się, że daje rozsądne wyniki, a cały proces jest ogólnie intuicyjny. Zasadniczo przewiduję brakujące wartości i używam tych przewidywanych wartości do przewidywania brakujących wartości i przechodzę przez każdą zmienną, aż każda zmienna w przybliżeniu zbiegnie się (w rozkładzie).

Czy jest jakiś powód, dla którego nie mogę użyć tego samego procesu do przypisania brakujących wyników? Prawdopodobnie mogę stworzyć względnie informacyjny model imputacji dla współczynnika odpowiedzi biomasy, biorąc pod uwagę współczynnik odpowiedzi ziarna, rodzaj uprawy i inne zmienne towarzyszące, które posiadam. Następnie wyliczyłem współczynniki i VCV i dodałem korektę MI zgodnie ze standardową praktyką.

Ale co mierzą te współczynniki, gdy same wyniki są przypisywane? Czy interpretacja współczynników różni się od standardowego MI dla zmiennych towarzyszących? Myśląc o tym, nie mogę się przekonać, że to nie działa, ale nie jestem do końca pewien. Mile widziane są myśli i sugestie dotyczące lektury.

użytkownik_ogólny
źródło
Nie mam odpowiedzi, ale jedno pytanie i dwie notatki: 1) log stosunku jest oczywiście różnicą logów. Więc twoje DV jest równoważne log (leczenie) - log (kontrola). 2) Na jaki podręcznik Gelmana patrzyłeś?
Peter Flom - Przywróć Monikę
Tak, DV jest równoważne log (leczenie) -log (kontrola). Opieram iteracyjną regresję przypisania na (nietechnicznym) rozdziale dotyczącym brakujących danych, które Gelman opublikował w Internecie: stat.columbia.edu/~gelman/arm/missing.pdf
generic_user
Powiedziano mi, że przypisanie wyniku prowadzi do błędu Monte Carlo. Spróbuje znaleźć link później. Nie zapominaj, że musisz uwzględnić wynik w modelach imputacji dla zmiennych towarzyszących.
DL Dahly,

Odpowiedzi:

20

Jak można podejrzewać, do pomiaru wyniku można zastosować wielokrotne przypisanie. Są przypadki, w których jest to przydatne, ale może być również ryzykowne. Uważam sytuację, w której wszystkie zmienne towarzyszące są kompletne, a wynik jest niepełny.

Jeśli model imputacji jest poprawny, uzyskamy prawidłowe wnioski na temat oszacowań parametrów na podstawie przypisanych danych. Wnioski uzyskane tylko z kompletnych przypadków mogą faktycznie być błędne, jeśli brak jest związany z wynikiem po uwarunkowaniu na predyktor, tj. Pod MNAR. Zatem przypisanie jest przydatne, jeśli wiemy (lub podejrzewamy), że dane są MNAR.

Zgodnie z MAR generalnie nie ma korzyści przypisywania wyniku, a dla małej liczby imputacji wyniki mogą być nawet nieco bardziej zmienne z powodu błędu symulacji. Istnieje ważny wyjątek od tego. Jeśli mamy dostęp do pomocniczej pełnej zmiennej, która nie jest częścią modelu i która jest silnie skorelowana z wynikiem, imputacja może być znacznie bardziej wydajna niż pełna analiza przypadku, co skutkuje bardziej precyzyjnymi szacunkami i krótszymi przedziałami ufności. Częstym scenariuszem jest sytuacja, gdy mamy tani miernik wyniku dla wszystkich i kosztowny miernik dla podzbioru.

W wielu zestawach danych brakujące dane występują również w zmiennych niezależnych. W takich przypadkach musimy przypisać zmienną wynikową, ponieważ jej przypisana wersja jest potrzebna do przypisania zmiennych niezależnych.

Stef van Buuren
źródło
Dzięki, to jest zgodne z moją intuicją, ale czy mógłbyś udostępnić link do dobrze wykonanego opublikowanego badania, które przypisuje zmienne zależne? Jednym z głównych powodów, dla których chcę przypisać miary wyniku, jest zwiększenie wielkości próby (z około 250 do około 450), aby ułatwić półparametryczne warunki interakcji produktu tensorowego w GAM, które mają bardzo wysokie wymagania df (zanim otrzymają ukarany, obniżający edf). MAR jest rozsądny w moim przypadku.
generic_user
1
W ANOVA powszechnie praktykowano uzyskanie zrównoważonych konstrukcji. Zobacz wprowadzenie RJA Little, Regresja z brakującymi X, JASA 1992. Przypuszczam, że wiesz, że zwiększenie wielkości próby w ten sposób nie pomaga uzyskać dokładniejszych szacunków. W przypadku zmiennych pomocniczych przeczytaj sekcję na temat super-wydajności w DB Rubin, Multiple Imputation after 18+ Years, JASA 1996.
Stef van Buuren
1
„W ramach MAR generalnie nie ma żadnych korzyści przypisywania wyniku” - widziałem to już wcześniej, ale nie mam odniesienia do tego - czy możesz podać jeden, proszę?
Robert Long
Myślę, że możesz zacytować Little 1992 tandfonline.com/doi/abs/10.1080/01621459.1992.10476282 , ale pamiętaj o wyjątkach.
Stef van Buuren
1
@StefvanBuuren - pomocna odpowiedź w przeważającej części, ale rozumiem, że „jeśli wiemy (lub podejrzewamy), że dane to MNAR”, imputacja nie może rozwiązać naszych problemów bardziej niż pełna analiza przypadku. Wydaje się, że należy to do kategorii „bez darmowego lunchu”.
rolando2
2

Przypisywanie danych wynikowych jest bardzo powszechne i prowadzi do prawidłowego wnioskowania przy uwzględnianiu błędu losowego.

Wydaje się, że to, co robisz, to pojedyncze przypisanie, poprzez przypisanie brakujących wartości warunkową wartością przy pełnej analizie przypadku. To, co powinieneś zrobić, to wielokrotne przypisanie, które dla ciągłych zmiennych towarzyszących uwzględnia losowy błąd, który zaobserwowałbyś, gdybyś z mocą wsteczną zmierzył te brakujące wartości. Algorytm EM działa w podobny sposób, uśredniając zakres możliwych obserwowanych wyników.

Pojedyncza imputacja zapewnia poprawne oszacowanie parametrów modelu, gdy nie ma zależności średniej wariancji, ale daje standardowe oszacowania błędów, które są tendencyjne w kierunku zera, zwiększając wskaźniki błędów typu I. Wynika to z tego, że byłeś „optymistyczny” co do zakresu błędu, jaki zaobserwowałbyś, gdybyś zmierzył te czynniki.

Imputacja wielokrotna to proces iteracyjnego generowania błędu addytywnego dla imputacji warunkowej średniej, dzięki czemu za pomocą 7 lub 8 symulacji imputacji można łączyć modele i ich błędy, aby uzyskać prawidłowe oszacowania parametrów modelu i ich standardowych błędów. Jeśli brakuje wspólnie zmiennych towarzyszących i wyników, w oprogramowaniu SAS, STATA i R istnieje oprogramowanie nazywane wielokrotną imputacją za pomocą równań łańcuchowych, w którym generowane są „kompletne” zestawy danych (zestawy danych o przypisanych wartościach, które są traktowane jako stałe i nieprzypadkowe), model parametry oszacowane na podstawie każdego kompletnego zestawu danych oraz ich oszacowania parametrów i błędy standardowe połączone przy użyciu prawidłowego wzoru matematycznego (szczegóły w pracy Van Buurena).

Nieznaczna różnica między procesem w MI a procesem, który opisałeś, polega na tym, że nie uwzględniłeś faktu, że oszacowanie rozkładu warunkowego wyniku przy użyciu danych przypisanych będzie zależeć od tego, w jakiej kolejności przypisujesz określone czynniki. Powinieneś był oszacować rozkład warunkowy brakujących zmiennych towarzyszących uzależniający od wyniku w MI, w przeciwnym razie otrzymasz oszacowania parametrów stronniczych.

AdamO
źródło
Dzięki. Po pierwsze, programuję wszystko od zera w języku R, nie używając MICE ani MI. Po drugie, przypisuję losowania (modelowanego) rozkładu predykcyjnego, a nie tylko warunkowe oczekiwania. Czy o tym mówisz w drugim akapicie? Jeśli nie, byłbym wdzięczny za wyjaśnienia. Ponadto do którego papieru Royston się odwołujesz? Jeśli chodzi o twój ostatni punkt - czy mówisz coś bardziej skomplikowanego niż „powinieneś umieścić zmienną zależną w modelu imputacji”? Jeśli tak, byłbym wdzięczny za wyjaśnienia.
generic_user
Wreszcie - nie wykonuję żadnego przypisania. Dopasowuję 30 modeli z wypełnionymi danymi i używam formuły V_b = W + (1 + 1 / m) B z Rubina.
generic_user
Papier Royston był hiperlinkiem. Właściwie chciałem połączyć Van Buurena, który zaimplementował program w R i zawiera szczegóły obliczeniowe: doc.utwente.nl/78938 MICE / MI to proces. Jeśli imputujesz na podstawie własnego kodu, powinieneś lepiej rozwinąć szczegóły. Średnie warunkowe = przewidywane wartości, jeśli model jest poprawny (lub w przybliżeniu tak, niezbędne założenie). Jest to bardziej skomplikowane niż „dodanie wyniku”, polega na tym, że przypisujesz kilka brakujących wzorców (co najmniej 3, brakujące zmienne towarzyszące / wynik / brakujące łącznie).
AdamO
Jeśli pojedynczo przypisujesz przewidywaną wartość 30 razy, powinieneś uzyskać te same wyniki 30 razy. Jak oceniasz błąd?
AdamO
Jest to dość prosty algorytm - powiedzmy, że z pewnym brakiem obserwuję a, b, cid. Wszystkie cztery wypełniam losowymi losowaniami (z podmianą) z zaobserwowanych wartości. Następnie modeluję imp = lm (a ~ b * + c * + d *) gdzie * oznacza wypełnione, a następnie x = przewiduj (imp, se.fit = PRAWDA), y = rnorm (N, impfajat,jampse.fit). Następnie wykonuję * = y, a następnie imp = lm (b ~ a * + c * + d *), przewiduję w ten sam sposób i tak dalej. Przeszukuję cały zestaw zmiennych 50 razy. To wszystko z tego rozdziału podręcznika Andrew Gelmana, który zamieściłem powyżej, i dlatego też nie otrzymuję tego samego wyniku za każdym razem.
generic_user