Thank you David for your answer,

- grade2 is a factor with 2 categories: "high" and "low" 
- yes as.factor is superfluous; it is just that it avoids warnings sometimes. 
This can be overlooked.
- I will look into Terry Therneau answers; he gives a good explanation on how to 
obtain the hazard for an individual given a set of predictors for the Cox model; 
I will look to see if this works for survreg andlook into survreg.distributions 
if it doesn't
- I'll come back if I can't figure it out.

Thanks again.

Best,

 David Biau.




________________________________
De : David Winsemius <dwinsemius@comcast.net>

Cc : r help list <r-help@r-project.org>
Envoyé le : Sam 13 novembre 2010, 19h 55min 10s
Objet : Re: [R] interpretation of coefficients in survreg AND obtaining the
hazard function for an individual given a set of predictors


On Nov 13, 2010, at 12:51 PM, Biau David wrote:

> Dear R help list,
> 
> I am modeling some survival data with coxph and survreg (dist='weibull') using
> package survival. I have 2 problems:
> 
> 1) I do not understand how to interpret the regression coefficients in the
> survreg output and it is not clear, for me, from ?survreg.objects how to.

Have you read:

?survreg.distributions  # linked from survreg help

> 
> Here is an example of the codes that points out my problem:
> - data is stc1
> - the factor is dichotomous with 'low' and 'high' categories

Not an unambiguous description for the purposes of answering your many 
questions. Please provide data or at the very least: str(stc1)

> 
> slr <- Surv(stc1$ti_lr, stc1$ev_lr==1)
> 
> mca <- coxph(slr~as.factor(grade2=='high'), data=stc1)

Not sure what that would be returning since we do not know the encoding of
grade2. If you want an estimate on a subset wouldn't you do the subsetting
outside of the formula? (You may be reversing the order by offering a logical 
test for grade2.)

> mcb <- coxph(slr~as.factor(grade2), data=stc1)

You have not provided the data or str(stc1), so it is entirely possible that 
as.factor is superfluous in this call.


> mwa <- survreg(slr~as.factor(grade2=='high'), data=stc1, dist='weibull',
> scale=0)
> mwb <- survreg(slr~as.factor(grade2), data=stc1, dist='weibull', scale=0)
> 
>> summary(mca)$coef
>                                                             coef
> exp(coef)      se(coef)         z                      Pr(>|z|)
> as.factor(grade2 == "high")TRUE 0.2416562  1.273356     0.2456232
> 0.9838494      0.3251896
> 
>> summary(mcb)$coef
>                                       coef             exp(coef)
> se(coef)             z                     Pr(>|z|)
> as.factor(grade2)low -0.2416562 0.7853261     0.2456232     -0.9838494
> 0.3251896
> 
>> summary(mwa)$coef
> (Intercept)     as.factor(grade2 == "high")TRUE
> 7.9068380       -0.4035245
> 
>> summary(mwb)$coef
> (Intercept)     as.factor(grade2)low
> 7.5033135       0.4035245
> 
> 
> No problem with the interpretation of the coefs in the cox model. However, i 
do
> not understand why
> a) the coefficients in the survreg model are the opposite (negative when the
> other is positive) of what I have in the cox model? are these not the log(HR)
> given the categories of these variable?

Probably because the order of the factor got reversed when you changed the
covariate to logical and them back to factor.

> b) how come the intercept coefficient changes (the scale parameter does not
> change)?
> 
> 2) My second question relates to the first.
> a) given a model from survreg, say mwa above, how should i do to extract the
> base hazard

Answered by Therneau earlier this week and the next question last month:

https://stat.ethz.ch/pipermail/r-help/2010-November/259570.html

https://stat.ethz.ch/pipermail/r-help/2010-October/257941.html


> and the hazard of each patient given a set of predictors? With the
> hazard function for the ith individual in the study given by  h_i(t) =
> exp(\beta'x_i)*\lambda*\gamma*t^{\gamma-1}, it doesn't look like to me that
> predict(mwa, type='linear') is \beta'x_i.


> b) since I need the coefficient intercept from the model to obtain the scale
> parameter  to obtain the base hazard function as defined in Collett
> (h_0(t)=\lambda*\gamma*t^{\gamma-1}), I am concerned that this coefficient
> intercept changes depending on the reference level of the factor entered in 
the
> model. The change is very important when I have more than one predictor in the
> model.
> 
> Any help would be greatly appreciated,
> 
> David Biau.
> 


David Winsemius, MD
West Hartford, CT


      
	[[alternative HTML version deleted]]

