Méthodes statistiques pour les données où seule une valeur minimale / maximale est connue


29

Existe-t-il une branche des statistiques qui traite des données dont les valeurs exactes ne sont pas connues , mais pour chaque individu, nous connaissons un maximum ou un minimum lié à la valeur ?

Je soupçonne que mon problème provient en grande partie du fait que j'ai du mal à l'articuler en termes statistiques, mais j'espère qu'un exemple aidera à clarifier:

Supposons qu'il existe deux populations connectées et telles que, à un moment donné, les membres de peuvent «passer» en , mais l'inverse n'est pas possible. Le moment de la transition est variable, mais non aléatoire. Par exemple, pourrait être "des individus sans progéniture" et "des individus avec au moins une progéniture". Je m'intéresse à l'âge de cette progression, mais je n'ai que des données transversales. Pour toute personne, je peux donnée savoir si elles appartiennent à ou . Je connais également l'âge de ces individus. Pour chaque individu de la populationB A B A B A B A BABABABABA, Je sais que l'âge à la transition sera PLUS GRAND QUE leur âge actuel. De même, pour les membres de , je sais que l'âge à la transition était inférieur à leur âge actuel. Mais je ne connais pas les valeurs exactes.B

Disons que j'ai un autre facteur que je veux comparer avec l'âge de la transition. Par exemple, je veux savoir si la sous-espèce ou la taille d'un individu affecte l'âge de la première progéniture. J'ai certainement des informations utiles qui devraient éclairer ces questions: en moyenne, des individus en , les individus plus âgés auront une transition ultérieure. Mais l'information est imparfaite , en particulier pour les jeunes. Et vice versa pour la population .BAB

Existe-t-il des méthodes établies pour traiter ce type de données ? Je n'ai pas nécessairement besoin d'une méthode complète pour mener à bien une telle analyse, juste de quelques termes de recherche ou de ressources utiles pour me lancer au bon endroit!

Mises en garde: Je fais l'hypothèse simplificatrice que la transition de à est instantanée. Je suis également prêt à supposer que la plupart des individus progresseront à un moment donné vers , en supposant qu'ils vivent assez longtemps. Et je me rends compte que les données longitudinales seraient très utiles, mais supposons qu'elles ne sont pas disponibles dans ce cas.B BABB

Toutes mes excuses s'il s'agit d'un doublon, comme je l'ai dit, une partie de mon problème est que je ne sais pas ce que je dois rechercher. Pour la même raison, veuillez ajouter d'autres balises le cas échéant.

Ensemble de données échantillon: Ssp indique l' un des deux sous - espèces, ou . La progéniture indique soit aucune progéniture ( ) ou au moins une progéniture ( )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

Modifier: l'exemple de jeu de données a été modifié car il n'était pas très représentatif


2
C'est une situation intéressante. Pouvez-vous fournir vos données?
gung - Rétablir Monica

1
Je ne serais pas en mesure de publier l'ensemble de données complet, mais je pourrais donner un exemple d'ensemble.
user2390246

Réponses:


26

Il s'agit des données d'état actuelles . Vous obtenez une vue transversale des données, et en ce qui concerne la réponse, tout ce que vous savez, c'est qu'à l'âge observé de chaque sujet, l'événement (dans votre cas: transition de A à B) s'est produit ou non. Il s'agit d'un cas particulier de censure d'intervalle .

TiiCiiCi<TiTX

(li,ri)Tiici(ci,)ci(0,ci)

Plug sans vergogne: si vous souhaitez utiliser des modèles de régression pour analyser vos données, cela peut être fait dans R en utilisant icenReg (je suis l'auteur). En fait, dans une question similaire sur les données d'état actuelles , l'OP a mis en place une belle démonstration de l'utilisation d'icenReg . Il commence par montrer que l'ignorance de la partie censure et l'utilisation de la régression logistique conduisent à des biais (note importante: il fait référence à l'utilisation de la régression logistique sans ajustement pour l'âge . Plus d'informations à ce sujet plus tard.)

Un autre excellent package est interval, qui contient des tests statistiques de log-rank, entre autres outils.

MODIFIER:

@EdM a suggéré d'utiliser la régression logistique pour répondre au problème. J'étais injustement dédaigneux de cela, disant que vous auriez à vous soucier de la forme fonctionnelle du temps. Bien que je soutienne l'affirmation selon laquelle vous devriez vous soucier de la forme fonctionnelle du temps, j'ai réalisé qu'il y avait une transformation très raisonnable qui conduit à un estimateur paramétrique raisonnable.

En particulier, si nous utilisons log (temps) comme covariable dans notre modèle avec régression logistique, nous nous retrouvons avec un modèle de cotes proportionnelles avec une ligne de base log-logistique.

Pour voir cela, considérons d'abord que le modèle de régression des cotes proportionnelles est défini comme

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

Oddso(t)t

Considérons maintenant une régression logistique avec log (Time) comme covariable. Nous avons alors

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

Avec un peu de travail, vous pouvez voir cela comme le CDF d'un modèle log-logistique (avec une transformation non linéaire des paramètres).

Démonstration R que les ajustements sont équivalents:

> 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

Notez que l'effet de grpest le même dans chaque modèle, et la log-vraisemblance finale ne diffère que par l'erreur numérique. Les paramètres de base (c.-à-d. Interception et log_age pour la régression logistique, alpha et bêta pour le modèle censuré par intervalles) sont des paramétrisations différentes de sorte qu'ils ne sont pas égaux.

Donc voilà: l'utilisation de la régression logistique équivaut à ajuster les cotes proportionnelles avec une distribution log-logistique de référence. Si vous êtes d'accord avec l'ajustement de ce modèle paramétrique, la régression logistique est tout à fait raisonnable. Je préviens qu'avec des données censurées par intervalles, les modèles semi-paramétriques sont généralement privilégiés en raison de la difficulté d'évaluer l'ajustement du modèle, mais si je pensais vraiment qu'il n'y avait pas de place pour les modèles entièrement paramétriques, je ne les aurais pas inclus icenReg.


Cela semble très utile. Je vais jeter un oeil aux ressources que vous pointez et jouer avec le package icenReg. J'essaie de comprendre pourquoi la régression logistique est moins appropriée - la suggestion de @EdM semble en surface comme si elle devait fonctionner. Le biais survient-il parce que «l'événement» - ici, avoir une progéniture - pourrait avoir un effet sur la survie? Donc, si cela diminue la survie, on constaterait que parmi les individus d'un âge donné, ceux qui ne se sont pas reproduits seront surreprésentés?
user2390246

1
@ user2390246: Vous pouvez utiliser la régression logistique pour les données d'état actuelles. Mais alors vous devez faire beaucoup de travail pour obtenir la forme fonctionnelle de l'âge, et c'est l'interaction avec d'autres variables, correct. Ceci est très simple. Avec les modèles basés sur la survie, vous pouvez utiliser une ligne de base semi-paramétrique ( ic_spin icenReg) et ne vous inquiétez pas du tout à ce sujet. De plus, regarder les courbes de survie des deux groupes répond correctement à votre question. Essayer de recréer cela à partir de l'ajustement logistique pourrait être fait, mais encore une fois, beaucoup plus de travail que d'utiliser des modèles de survie.
Cliff AB

Je suis d'accord avec @CliffAB à ce sujet. J'ai hésité à recommander une régression logistique en raison de la difficulté d'obtenir la bonne forme fonctionnelle pour la dépendance à l'âge. Je n'ai aucune expérience de l'analyse des données d'état actuel; ne pas avoir à comprendre cette forme de dépendance à l'âge est un gros avantage de cette technique. Je maintiendrai néanmoins ma réponse pour que ceux qui examineront plus tard ce fil comprennent comment cela s'est déroulé.
EdM

Il me semble que votre commentaire ici est au cœur de la question. Il serait utile que vous développiez cela dans votre réponse. Par exemple, si vous pouviez utiliser les données d'exemple de l'OP pour construire un modèle LR et un modèle de survie à censure d'intervalle, et montrer comment ce dernier répond plus facilement à la question de recherche de l'OP.
gung - Réintégrer Monica

1
@gung: en fait, j'ai adopté une position plus douce concernant la régression logistique. J'ai modifié ma réponse pour refléter cela.
Cliff AB

4

f(x)F(x)xiif(xi)yi1F(yi)ziF(zi)(yi,zi]F(zi)F(yi)


1
f(x)F(yi)F(yi+)

4

Ce problème semble pouvoir être bien géré par régression logistique.

Vous avez deux états, A et B, et vous souhaitez examiner la probabilité qu'un individu particulier soit passé de manière irréversible de l'état A à l'état B. Une variable prédictive fondamentale serait l'âge au moment de l'observation. L'autre ou les autres facteurs d'intérêt seraient des variables prédictives supplémentaires.

Votre modèle logistique utiliserait alors les observations réelles de l'état A / B, de l'âge et d'autres facteurs pour estimer la probabilité d'être dans l'état B en fonction de ces prédicteurs. L'âge auquel cette probabilité passe à 0,5 pourrait être utilisé comme estimation du temps de transition, et vous examineriez ensuite les influences des autres facteurs sur ce temps de transition prévu.

Ajouté en réponse à la discussion:

Comme pour tout modèle linéaire, vous devez vous assurer que vos prédicteurs sont transformés de manière à avoir une relation linéaire avec la variable de résultat, dans ce cas, les log-odds de la probabilité d'être passé à l'état B. Ce n'est pas nécessairement un problème trivial. La réponse de @CliffAB montre comment une transformation logarithmique de la variable d'âge pourrait être utilisée.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.