Dokładnie w jaki sposób coxph () R radzi sobie z powtarzanymi taktami?

10

Kontekst

Próbuję zrozumieć, w jaki sposób Rxx () przyjmuje i obsługuje powtarzające się wpisy dla podmiotów (lub pacjenta / klienta, jeśli wolisz). Niektórzy nazywają to długim formatem, inni nazywają to „powtarzanymi pomiarami”.

Zobacz na przykład zestaw danych zawierający kolumnę identyfikatora w sekcji Odpowiedzi na:

Najlepsze pakiety dla modeli Coxa z zmiennymi zmiennymi w czasie

Załóżmy również, że zmienne towarzyszące są zmienne w czasie i istnieje dokładnie jedna zmienna cenzora (tj. Zdarzenie), która jest binarna.

pytania

1) Jeśli w powyższym linku odpowiedź nie zostanie podana jako parametr w wywołaniu coxph (), to czy wyniki powinny być takie same, jak uwzględnienie klastra (ID) jako parametru w coxph ()?

Próbowałem wyszukać dokumentację, ale następujące elementy nie wydają się wyraźnie adresować (1): https://stat.ethz.ch/pipermail/r-help//2013-July/357466.html

2) Jeśli odpowiedź na (1) brzmi „nie”, to (matematycznie) dlaczego? Wydaje się, że klaster () w coxph () szuka korelacji między podmiotami zgodnie z podrozdziałem „klaster” na stronie. 20 at

https://cran.r-project.org/web/packages/survival/survival.pdf

3) Niejasne pytanie: w jaki sposób coxph () z powtarzanymi pomiarami wypada w porównaniu z metodami regresji kruchego pakietu R.

Dodatki

Następujące wskazówki dotyczące korzystania z klastra (ID):

Czy istnieje wersja testu logrank uwzględniająca powtarzane pomiary?

podobnie jak:

https://stat.ethz.ch/pipermail/r-help//2013-July/357466.html

Podejście GEE: dodaj „+ klaster (podmiot)” do instrukcji modelu w Coxph Podejście modeli mieszanych: dodaj „+ (1 | podmiot)” do statystyki modelu w Coxme.

Z góry dziękuję!

Quetzalcoatl
źródło

Odpowiedzi:

11
  1. Uwzględnienie cluster(ID)nie zmienia oszacowań punktowych parametrów. Zmienia to jednak sposób obliczania standardowych błędów.

    Więcej szczegółów można znaleźć w książce Therneau & Grambsch „ Rozszerzanie modelu Coxa” , rozdział 8.2. Zauważ, że w ich przykładzie używają method = "breslow"jako korekty powiązań, ale także z default ( method = "efron") zastosowane zostaną podobne obliczenia dla se, które pojawiają się w podsumowaniu jako „solidne se”.

  2. Jeśli stosuje się klaster (ID), narzuca się „solidną” ocenę standardowych błędów i mierzy się możliwą zależność między podmiotami (np. Na podstawie standardowych błędów i wyników wariancji). Z drugiej strony nieużywanie klastra (ID) narzuca niezależność przy każdej obserwacji i zakłada się, że więcej „informacji” w danych. Mówiąc bardziej technicznie, funkcja wyniku dla parametrów nie zmienia się, ale zmienia się wariancja tego wyniku. Bardziej intuicyjnym argumentem jest to, że 100 obserwacji na 100 osobników dostarcza więcej informacji niż 100 obserwacji na 10 osobach (lub grupach).

  3. Rzeczywiście niejasne. Krótko mówiąc, +frailty(ID)w coxph()napadach standardowych modelach frailty gamma lub logarytmiczno-normalny losowych, i nieparametryczny zagrożenia bazowa / intensywności. frailtypackwykorzystuje parametryczną linię bazową (także elastyczne wersje z splajnami lub częściowymi stałymi funkcjami), a także pasuje do bardziej skomplikowanych modeli, takich jak skorelowana słabość, słabość zagnieżdżona itp.

Wreszcie, +cluster()jest nieco w duchu GEE, ponieważ bierzesz równania punktowe z prawdopodobieństwa z niezależnymi obserwacjami i używasz innego „solidnego” estymatora dla standardowych błędów.

edycja: Dzięki @Ivan za sugestie dotyczące przejrzystości postu.

Teodor
źródło
Dziękuję Ci. Odnośnie (2): można „Dzieje się tak, ponieważ jeśli (błędnie) założycie ...” zostanie zastąpiony przez „Jeśli nie użyjesz klastra (ID) w wywołaniu coxph (), wtedy błędnie założysz ...”
Quetzalcoatl
Miałem na myśli: jeśli obserwacje są skupione, mogą być lub nie być niezależne. Zakładanie, że są niezależni (tzn. Nie używają klastra (id)), jest prawie na pewno błędne w tym przypadku, ale nie ma pojęcia, aby wiedzieć o tym wcześniej
Theodor
(2) można przeformułować w następujący sposób: w przypadku zastosowania klastra (ID) nakłada się „solidną” ocenę standardowych błędów i mierzy się możliwą zależność między podmiotami (np. Na podstawie błędów standardowych i wyników wariancji). Z drugiej strony nieużywanie klastra (ID) narzuca niezależność przy każdej obserwacji i zakłada się, że więcej „informacji” w danych.
Quetzalcoatl
Link referencyjny podany w (1) powinien brzmieć: springer.com/us/book/9780387987842 (zakładając, że cytujesz książkę Therneau i Grambscha)
Quetzalcoatl
Uwaga: jak wyjaśniono w książce Therneau i Grambscha, odpowiedź w powyższym punkcie (1) jest prawidłowa, ponieważ coxph () używa domyślnej metody Breslow dla więzi.
Quetzalcoatl
1

Oto odpowiedź z survivalwiniety paczki, która okazała się pomocna - jest powiązana z pierwszą odpowiedzią na pierwsze pytanie, do którego dałeś link:

Najlepsze pakiety dla modeli Coxa z zmiennymi zmiennymi w czasie

Odnoszą się do konfiguracji danych w formie długiej lub danych z powtarzającymi się wpisami dla tematów.

Jednym z typowych pytań dotyczących tego zestawu danych jest to, czy musimy martwić się o skorelowane dane, ponieważ dany podmiot ma wiele obserwacji. Odpowiedź brzmi: nie, my nie. Powodem jest to, że ta reprezentacja jest po prostu sztuczką programistyczną. Równania prawdopodobieństwa w dowolnym momencie wykorzystują tylko jedną kopię dowolnego przedmiotu, program za każdym razem wybiera prawidłowy wiersz danych. Istnieją dwa wyjątki od tej reguły:

  • Gdy podmioty mają wiele zdarzeń, wówczas wiersze dotyczące zdarzeń są skorelowane w obrębie podmiotu i potrzebna jest wariancja skupienia.
  • Gdy obiekt pojawia się w nakładających się interwałach. Jest to jednak prawie zawsze błąd danych, ponieważ odpowiada to dwóm kopiom podmiotu obecnym w tych samych warstwach w tym samym czasie, np. Mogła spotkać się na imprezie.

Podają przykład

fit <- coxph(Surv(time1, time2, status) ~ age + creatinine, data=mydata)

sugerując, że jeśli podasz dwa razy (początek i koniec okresu) Survzamiast zamiast jednego, coxph()rozliczy resztę.

BLT
źródło
Chyba że coś źle zrozumiałem, myślę, że ten komentarz wprowadza w błąd? Musimy martwić się o skorelowane dane, jeśli chcemy uzyskać dokładne oszacowania wariancji, dlatego dlaczego dodanie terminu klaster + (ID) zmienia szacunkowe warunki wariancji?
AP30