Temps de survie moyen pour une fonction de survie log-normale

10

J'ai trouvé beaucoup de formules montrant comment trouver le temps de survie moyen pour une distribution exponentielle ou de Weibull, mais j'ai beaucoup moins de chance pour les fonctions de survie log-normales.

Étant donné la fonction de survie suivante:

S(t)=1-ϕ[ln(t)-μσ]

Comment trouve-t-on le temps de survie moyen. Si je comprends bien, est le paramètre d'échelle estimé, et que exp ( ) d'un modèle de survie paramétrique est . Bien que je pense que je peux le manipuler symboliquement pour obtenir t tout seul après avoir défini S (t) = 0,5, ce qui me frappe particulièrement, c'est comment gérer dans quelque chose comme R quand il s'agit en fait de saisir toutes les estimations et d'obtenir un entre temps.β μ ϕσβμϕ

Jusqu'à présent, j'ai généré la fonction de survie (et les courbes associées), comme ceci:

beta0 <- 2.00
beta1 <- 0.80
scale <- 1.10

exposure <- c(0, 1)
t <- seq(0, 180)
linmod <- beta0 + (beta1 * exposure)
names(linmod) <- c("unexposed", "exposed")

## Generate s(t) from lognormal AFT model

s0.lnorm <- 1 - pnorm((log(t) - linmod["unexposed"]) / scale)
s1.lnorm <- 1 - pnorm((log(t) - linmod["exposed"]) / scale)

## Plot survival
plot(t,s0.lnorm,type="l",lwd=2,ylim=c(0,1),xlab="Time",ylab="Proportion Surviving")
lines(t,s1.lnorm,col="blue",lwd=2)

Ce qui donne les résultats suivants:

entrez la description de l'image ici

Fomite
la source
3
Je suppose que vous voulez dire «durée médiane de survie» plutôt que «durée moyenne de survie». On trouve facilement que le temps de survie médian est . tmed=exp(μ)
ocram
@ocram - Eh bien, c'était ... facile. Convertissez cela en une réponse et j'accepterai. Cependant, par curiosité, pourquoi supposez-vous que je veux dire «médiane» plutôt que «moyenne»?
Fomite
1
Si vous vouliez dire moyenne et non médiane, vous ne définissez pas S (t) = 0,5. La lognormale est une distribution fortement asymétrique et la moyenne et la médiane diffèrent. Le temps de survie moyen est plus compliqué que la médiane.
Michael R. Chernick
@EpiGard: J'ai supposé "médiane" plutôt que "moyenne" pour la raison soulignée par Michael C. ;-) Je vais convertir mon commentaire en réponse.
ocram
1
Le temps de survie moyen n'est pas très compliqué. Voir ma réponse. (Les différents moments sont également relativement faciles à calculer.)
Mark Adler

Réponses:

7

tmedS(t)=12tmed=exp(μ)Φ(0)=12Φ


μ=320,1

entrez la description de l'image ici

ocram
la source
t=1
5

Le rmspackage R peut vous aider:

require(rms)
f <- psm(Surv(dtime, event) ~ ..., dist='lognormal')
m <- Mean(f)
m   # see analytic form
m(c(.1,.2)) # evaluate mean at linear predictor values .1, .2
m(predict(f, expand.grid(age=10:20, sex=c('male','female'))))
# evaluates mean survival time at combinations of covariate values
Frank Harrell
la source
Probablement très utile pour l'avenir, mais les données de survie réelles elles-mêmes ne sont pas en R - elles sont sur la liste à traduire à un moment donné, mais pour l'instant, ce ne sont que des coefficients, tout le reste étant fait en SAS.
Fomite
Vous trouverez que les capacités d'analyse de survie de R sont en avance sur celles de SAS.
Frank Harrell
D'accord - d'où «sur la liste à traduire», mais je ne connais pas aussi bien R, et bien que ce bit soit facile, les parties étendues du projet sont considérablement plus compliquées et ont des implémentations existantes dans SAS.
Fomite
3

eμ+σ22σ=1.1

Mark Adler
la source