Comment calculer les taux de risque prévus à partir d'un modèle Cox PH?

11

J'ai le modèle Cox PH suivant:

(Heure, événement) ~ X + Y + Z

Je voudrais obtenir les risques prévus taux (je parle des taux de risque NON ratios danger) , étant donné les valeurs spécifiques de X, Y, Z. Je sais que le package muhaz R peut calculer les taux de risque observés, mais je suis intéressé par le modèle prévu.

Y a-t-il un moyen de le faire dans R?

pas de stock
la source
2
Il semble que votre "équation" modélise un résultat binaire. Maintenant, le modèle PH de Cox traite des données de survie et ce qui se trouve du côté gauche devrait être un taux de risque ... Je pense que vous devriez clarifier ...
ocram
2
Le modèle de Cox n'évalue pas la fonction de risque de base (généralement indiquée par ). Pour estimer le taux d'incidence à partir d'un modèle, vous devez plutôt utiliser un modèle de survie paramétrique. λ0(t)
boscovich
1
Il y a une certaine ambiguïté dans votre question. La fonction de hasard est une probabilité, pas un taux. Est-ce la fonction de danger que vous souhaitez ou autre chose?
Fomite

Réponses:

16

La fonction dans le package de survie R pour obtenir le taux de risque de base est basehaz.

Ensuite, vous devez le multiplier pour les différents pour obtenir le taux de risque spécifique compte tenu des coefficients que vous avez trouvés.eβ

Un exemple simple peut aider:

library(survival) #survival analysis
library(eha) #used for data 
data(oldmort) #create the data

# Create surv data set
mort <- Surv(time=oldmort$enter,time2=oldmort$exit,event=oldmort$event)

reg_fit <- coxph(formula=mort~oldmort$sex)
summary(reg_fit)

# Now get baseline curve
baseline <- basehaz(reg_fit)

# Draw baseline hazard (that's male)
plot(baseline$time, baseline$hazard, type='l',main="Hazard rates") 

# Draw female hazard
lines(baseline$time, exp(-0.1929)*baseline$hazard, col="blue") 

le est copié et collé à partir des résultats sommaires de la régression cox , ce qui implique que les femmes dans les données ont des taux de risque inférieurs à ceux des hommes.exp(-0,1929)=0,8245summary(reg_fit)18%

CarrKnight
la source
13

La fonction basehaz(de la réponse précédente) fournit le risque cumulatif , pas la fonction de danger (le taux). Je crois que cette question portait sur la fonction de danger. L'estimation de la fonction de risque nécessiterait la spécification du type de lissage (comme dans l'estimation de la densité). Le Muhazpackage R peut le faire pour un exemple de données. Je ne connais pas de fonction qui puisse le faire pour l'aléa de référence dans le modèle de Cox. J'ai aussi besoin de ça. Je pense que je devrai atténuer le risque cumulatif par moi-même.

user21413
la source