# [R] interpretation of coefficients in survreg AND obtaining the hazard function for an individual given a set of predictors

David Winsemius dwinsemius at comcast.net
Sat Nov 13 19:55:10 CET 2010

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.

?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

questions. Please provide data or at the very least: str(stc1)

>
> slr <- Surv(stc1$ti_lr, stc1$ev_lr==1)
>

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.)

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

> 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
> 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