Metody statystyczne dla danych, w których znana jest tylko wartość minimalna / maksymalna

29

Czy istnieje gałąź statystyki, która zajmuje się danymi, dla których dokładne wartości nie są znane , ale dla każdej osoby znamy maksymalne lub minimalne ograniczenie do wartości ?

Podejrzewam, że mój problem wynika w dużej mierze z tego, że staram się go wyrazić statystycznie, ale mam nadzieję, że przykład pomoże wyjaśnić:

Powiedzmy, że istnieją dwie połączone populacje i tak że w pewnym momencie członkowie mogą „przejść” do , ale odwrotność nie jest możliwa. Czas przejścia jest zmienny, ale nieprzypadkowy. Na przykład może oznaczać „osobniki bez potomstwa”, a „osobniki z co najmniej jednym potomstwem”. Interesuje mnie wiek, w którym ten postęp występuje, ale mam tylko dane przekrojowe. Dla danego indywidualny, mogę dowiedzieć się, czy należą one do lub . Znam także wiek tych osób. Dla każdej osoby w populacjiB A B A B A B AABABABABA, Wiem, że wiek w chwili przejścia będzie WIĘKSZY NIŻ ich obecny wiek. Podobnie, w przypadku członków grupy wiem, że wiek przejścia był MNIEJSZY NIŻ ich obecny wiek. Ale nie znam dokładnych wartości.B

Powiedzmy, że mam inny czynnik, który chcę porównać z wiekiem przejścia. Na przykład chcę wiedzieć, czy podgatunek lub wielkość ciała danej osoby wpływa na wiek pierwszego potomstwa. Zdecydowanie mam kilka przydatnych informacji, które powinny udzielić odpowiedzi na te pytania: średnio u osób w osoby starsze przechodzą później. Ale informacje są niedoskonałe , szczególnie dla młodszych osób. I vice versa dla populacji .AB

Czy istnieją ustalone metody radzenia sobie z tego rodzaju danymi ? Niekoniecznie potrzebuję pełnej metody przeprowadzania takiej analizy, tylko kilka wyszukiwanych haseł lub użytecznych zasobów, aby zacząć na właściwym miejscu!

Ostrzeżenia: Przyjmuję uproszczone założenie, że przejście z punktu do punktu jest natychmiastowe. Jestem również gotów założyć, że większość osób przejdzie w pewnym momencie do , zakładając, że żyją wystarczająco długo. I zdaję sobie sprawę, że dane podłużne byłyby bardzo pomocne, ale zakładam, że w tym przypadku nie są one dostępne.B BABB

Przepraszam, jeśli jest to duplikat, jak powiedziałem, częścią mojego problemu jest to, że nie wiem, czego powinienem szukać. Z tego samego powodu w razie potrzeby dodaj inne tagi.

Zbiór danych próbki: Ssp oznacza jedną z dwóch podgatunków, lub . Potomstwo oznacza brak potomstwa ( ) lub co najmniej jedno potomstwo ( )Y A BXYAB

 age ssp offsp
  21   Y     A
  20   Y     B
  26   X     B
  33   X     B
  33   X     A
  24   X     B
  34   Y     B
  22   Y     B
  10   Y     B
  20   Y     A
  44   X     B
  18   Y     A
  11   Y     B
  27   X     A
  31   X     B
  14   Y     B
  41   X     B
  15   Y     A
  33   X     B
  24   X     B
  11   Y     A
  28   X     A
  22   X     B
  16   Y     A
  16   Y     B
  24   Y     B
  20   Y     B
  18   X     B
  21   Y     B
  16   Y     B
  24   Y     A
  39   X     B
  13   Y     A
  10   Y     B
  18   Y     A
  16   Y     A
  21   X     A
  26   X     B
  11   Y     A
  40   X     B
   8   Y     A
  41   X     B
  29   X     B
  53   X     B
  34   X     B
  34   X     B
  15   Y     A
  40   X     B
  30   X     A
  40   X     B

Edycja: przykładowy zestaw danych został zmieniony, ponieważ nie był zbyt reprezentatywny

użytkownik2390246
źródło
2
To interesująca sytuacja. Czy możesz podać swoje dane?
Gung - Przywróć Monikę
1
Nie byłbym w stanie opublikować pełnego zestawu danych, ale mógłbym podać przykładowy zestaw.
user2390246

Odpowiedzi:

26

Są to tak zwane dane dotyczące bieżącego stanu . Otrzymujesz jeden przekrój danych, a jeśli chodzi o odpowiedź, wszystko, co wiesz, to to, że w obserwowanym wieku każdego pacjenta zdarzenie (w twoim przypadku: przejście z A do B) miało miejsce lub nie. Jest to szczególny przypadek cenzury interwałowej .

Aby go formalnie zdefiniować, niech będzie (nieobserwowanym) prawdziwym czasem zdarzenia dla podmiotu . Niech czas inspekcji dla przedmiotu (w twoim przypadku: wiek podczas inspekcji). Jeśli , dane są odpowiednio cenzurowane . W przeciwnym razie dane są cenzurowane . Jesteśmy ciekawe w modelowaniu rozkładu . Dla modeli regresji, jesteśmy zainteresowani w modelowaniu, w jaki sposób zmienia się rozkład z zestawem zmiennych towarzyszących .TiiCiiCi<TiTX

Aby to przeanalizować za pomocą metod cenzury interwałowej, należy umieścić dane w ogólnym formacie cenzury interwałowej. Oznacza to, że dla każdego podmiotu mamy przedział , który reprezentuje przedział, w którym wiemy, że ma być zawarty. Więc jeśli temat jest właściwie ocenzurowany w czasie inspekcji , napisalibyśmy . Jeśli pozostanie ocenzurowany w , reprezentowalibyśmy go jako .(li,ri)Tiici(ci,)ci(0,ci)

Bezwstydna wtyczka: jeśli chcesz użyć modeli regresji do analizy danych, możesz to zrobić w R za pomocą icenReg (jestem autorem). W rzeczywistości, w podobnym pytaniu o bieżące dane o statusie , OP przedstawił fajną demonstrację użycia icenReg . Zaczyna od pokazania, że ​​ignorowanie części cenzurującej i stosowanie regresji logistycznej prowadzi do stronniczości (ważna uwaga: odnosi się do stosowania regresji logistycznej bez dostosowywania się do wieku . Więcej na ten temat później).

Kolejnym świetnym pakietem interval, który zawiera między innymi testy statystyczne rang logarytmicznych.

EDYTOWAĆ:

@EdM zasugerował użycie regresji logistycznej w celu rozwiązania problemu. Niesłusznie to lekceważyłem, mówiąc, że będziesz musiał się martwić o funkcjonalną formę czasu. Chociaż stoję za stwierdzeniem, że powinieneś martwić się o funkcjonalną formę czasu, zdałem sobie sprawę, że nastąpiła bardzo rozsądna transformacja, która prowadzi do rozsądnego estymatora parametrycznego.

W szczególności, jeśli wykorzystamy log (czas) jako zmienną towarzyszącą w naszym modelu z regresją logistyczną, otrzymamy proporcjonalny model szans z logistyczną linią bazową.

Aby to zobaczyć, najpierw należy wziąć pod uwagę, że model proporcjonalnej regresji szans jest zdefiniowany jako

Odds(t|X,β)=eXTβOddso(t)

gdzie jest podstawowym prawdopodobieństwem przeżycia w czasie . Zauważ, że efekty regresji są takie same jak w przypadku regresji logistycznej. Wszystko, co musimy teraz zrobić, to pokazać, że rozkładem podstawowym jest logistyka.Oddso(t)t

Teraz rozważ regresję logistyczną z log (Czas) jako współzmienną. Mamy wtedy

P(Y=1|T=t)=exp(β0+β1log(t))1+exp(β0+β1log(t))

Przy odrobinie pracy możesz to zobaczyć jako CDF modelu logistyczno-logistycznego (z nieliniową transformacją parametrów).

Wykazanie R, że pasowania są równoważne:

> library(icenReg)
> data(miceData)
> 
> ## miceData contains current status data about presence 
> ## of tumors at sacrifice in two groups
> ## in interval censored format: 
> ## l = lower end of interval, u = upper end
> ## first three mice all left censored
> 
> head(miceData, 3)
  l   u grp
1 0 381  ce
2 0 477  ce
3 0 485  ce
> 
> ## To fit this with logistic regression, 
> ## we need to extract age at sacrifice
> ## if the observation is left censored, 
> ## this is the upper end of the interval
> ## if right censored, is the lower end of interval
> 
> age <- numeric()
> isLeftCensored <- miceData$l == 0
> age[isLeftCensored] <- miceData$u[isLeftCensored]
> age[!isLeftCensored] <- miceData$l[!isLeftCensored]
> 
> log_age <- log(age)
> resp <- !isLeftCensored
> 
> 
> ## Fitting logistic regression model
> logReg_fit <- glm(resp ~ log_age + grp, 
+                     data = miceData, family = binomial)
> 
> ## Fitting proportional odds regression model with log-logistic baseline
> ## interval censored model
> ic_fit <- ic_par(cbind(l,u) ~ grp, 
+            model = 'po', dist = 'loglogistic', data = miceData)
> 
> summary(logReg_fit)

Call:
glm(formula = resp ~ log_age + grp, family = binomial, data = miceData)

Deviance Residuals: 
    Min       1Q   Median       3Q      Max  
-2.1413  -0.8052   0.5712   0.8778   1.8767  

Coefficients:
             Estimate Std. Error z value Pr(>|z|)   
(Intercept)  18.3526     6.7149   2.733  0.00627 **
log_age      -2.7203     1.0414  -2.612  0.00900 **
grpge        -1.1721     0.4713  -2.487  0.01288 * 
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 196.84  on 143  degrees of freedom
Residual deviance: 160.61  on 141  degrees of freedom
AIC: 166.61

Number of Fisher Scoring iterations: 5

> summary(ic_fit)

Model:  Proportional Odds
Baseline:  loglogistic 
Call: ic_par(formula = cbind(l, u) ~ grp, data = miceData, model = "po", 
    dist = "loglogistic")

          Estimate Exp(Est) Std.Error z-value        p
log_alpha    6.603 737.2000   0.07747  85.240 0.000000
log_beta     1.001   2.7200   0.38280   2.614 0.008943
grpge       -1.172   0.3097   0.47130  -2.487 0.012880

final llk =  -80.30575 
Iterations =  10 
> 
> ## Comparing loglikelihoods
> logReg_fit$deviance/(-2) - ic_fit$llk
[1] 2.643219e-12

Zauważ, że efekt grpjest taki sam w każdym modelu, a końcowe prawdopodobieństwo dziennika różni się tylko błędem numerycznym. Parametry podstawowe (tj. Przechwytywanie i log_age dla regresji logistycznej, alfa i beta dla modelu cenzurowanego przedziału) są różnymi parametrami, więc nie są sobie równe.

Więc masz to: użycie regresji logistycznej jest równoważne dopasowaniu proporcjonalnych szans z logistycznym rozkładem podstawowym. Jeśli nie masz nic przeciwko dopasowaniu tego modelu parametrycznego, regresja logistyczna jest całkiem rozsądna. Ostrzegam, że przy danych ocenzurowanych przedziałowo modele półparametryczne są zazwyczaj preferowane ze względu na trudność w ocenie dopasowania modelu, ale gdybym naprawdę myślał, że nie ma miejsca na modele w pełni parametryczne, nie uwzględniłbym ich icenReg.

Cliff AB
źródło
To wygląda bardzo pomocne. Przyjrzę się wskazanym przez Ciebie zasobom i zagram z pakietem icenReg. Próbuję się zastanowić, dlaczego regresja logistyczna jest mniej odpowiednia - sugestia @EdM wygląda na powierzchowną, jakby działała. Czy uprzedzenie powstaje, ponieważ „zdarzenie” - tutaj, mając potomstwo - może mieć wpływ na przetrwanie? Więc jeśli zmniejszy to przeżycie, stwierdzilibyśmy, że wśród osób w danym wieku te, które się nie rozmnażają, będą nadmiernie reprezentowane?
user2390246
1
@ user2390246: Ty mógł używać regresji logistycznej do aktualnych danych o stanie. Ale potem trzeba dużo pracy, aby uzyskać funkcjonalną formę wieku, i to jest interakcja z innymi zmiennymi, prawda. Jest to bardzo nietrywialne. Dzięki modelom opartym na przeżyciu możesz użyć półparametrycznej linii bazowej ( ic_spin icenReg) i nie martwić się o to. Ponadto, patrząc na krzywe przeżycia dla dwóch grup, poprawnie odpowiada na twoje pytanie. Próba odtworzenia tego z logistycznego dopasowania może być wykonana, ale znowu, o wiele więcej pracy niż przy użyciu modeli przetrwania.
Cliff AB,
Zgadzam się z tym w @CliffAB. Wahałem się przed zaleceniem regresji logistycznej, szczególnie z powodu trudności z uzyskaniem odpowiedniej formy funkcjonalnej dla zależności od wieku. Nie miałem żadnego doświadczenia z analizą danych o bieżącym stanie; ogromną zaletą tej techniki jest to, że nie trzeba odkrywać, że ta forma zależności od wieku. Niemniej jednak będę podtrzymywał swoją odpowiedź, aby ci, którzy później zbadają ten wątek, zrozumieli, jak się to rozgrywa.
EdM
Wydaje mi się, że wasz komentarz jest sednem sprawy. Pomogłoby to rozwinąć to w swojej odpowiedzi. Np. Jeśli możesz użyć przykładowych danych PO do zbudowania modelu LR i modelu przetrwania ocenzurowanego w odstępach czasu, i pokaż, w jaki sposób ten drugi łatwiej odpowiada na pytanie badawcze PO.
Gung - Przywróć Monikę
1
@gung: w rzeczywistości zająłem łagodniejsze stanowisko w sprawie regresji logistycznej. Zredagowałem swoją odpowiedź, aby to odzwierciedlić.
Cliff AB
4

Jest to przypadek cenzury / zgrubnych danych. Załóżmy, że uważasz, że Twoje dane pochodzą z dystrybucji z ładnie zachowanym ciągłym (itp.) Pdf i cdf . Standardowym rozwiązaniem dla danych czasu do zdarzenia, gdy znany jest dokładny czas zdarzenia dla podmiotu polega na tym, że udział prawdopodobieństwa wynosi . Jeśli wiemy tylko, że czas był większy niż (prawocenzurowanie), wówczas udział prawdopodobieństwa wynosi przy założeniu niezależnej cenzury. Jeśli wiemy, że czas jest krótszy niż (lewy cenzura), wówczas udział prawdopodobieństwa wynosiF ( x ) x i i f ( x i ) y i 1 - F ( y i ) z i F ( z i ) ( y i , z i ] F ( z i ) - F ( y i )f(x)F(x)xiif(xi)yi1F(yi)ziF(zi). Wreszcie, jeśli czas mieści się w pewnym przedziale , wówczas udział prawdopodobieństwa wynosiłby .(yi,zi]F(zi)F(yi)

Björn
źródło
1
Nie ma potrzeby, aby był ciągły. Lub nawet dobrze wychowany. Może to być model dyskretny przetrwanie (tak pdf jest niezdefiniowany i PMF jest używany zamiast) i reszta tego, co powiedział pan byłby poprawny, z lekkim regulacji (zastąpić z .F ( y i )f(x)F(yi)F(yi+)
Cliff AB,
4

Wydaje się, że problem ten można rozwiązać dobrze za pomocą regresji logistycznej.

Masz dwa stany, A i B, i chcesz zbadać prawdopodobieństwo, czy dana osoba nieodwracalnie przełączyła się ze stanu A na stan B. Jedną podstawową zmienną predykcyjną byłby wiek w chwili obserwacji. Innym czynnikiem lub czynnikami będącymi przedmiotem zainteresowania byłyby dodatkowe zmienne predykcyjne.

Twój model logistyczny wykorzystałby wówczas rzeczywiste obserwacje stanu A / B, wieku i innych czynników do oszacowania prawdopodobieństwa bycia w stanie B jako funkcji tych predyktorów. Wiek, w którym to prawdopodobieństwo przekroczy 0,5, może być wykorzystany jako oszacowanie czasu przejścia, a następnie zbadałbyś wpływ innych czynników na przewidywany czas przejścia.

Dodano w odpowiedzi na dyskusję:

Podobnie jak w przypadku każdego modelu liniowego, musisz upewnić się, że twoje predyktory są przekształcone w taki sposób, aby miały liniową zależność od zmiennej wynikowej, w tym przypadku logarytmiczne prawdopodobieństwo przejścia do stanu B. To niekoniecznie trywialny problem. Odpowiedź @CliffAB pokazuje, w jaki sposób można zastosować transformację dziennika zmiennej wieku.

EdM
źródło