RustyStatistician
RustyStatistician

Reputation: 1049

Extracting pvalues and se(coef) from coxph in R

I am trying to streamline my code to avoid for loops but am having a hard time once I run my cox proportional hazards code to extract p-values and standard errors for the coefficients. My code is as follows:

library(survival)

#Generate Data
x = matrix(rbinom(10000,1,.5),ncol=100)
y = rexp(ncol(x),.02)
censor = rbinom(ncol(x),1,.5)
event = ifelse(censor==1,0,1)

#Fit the coxph model to the data
ans = apply(x,1,function(x,y,event)coxph(Surv(y,event)~x),y=y,event=event)

#Extract the coefficients from ans
coef = unname(sapply(ans,function(x)x$coef))

So as you can see, I am able to extract the coefficients from the object ans, but I cannot extract the p-values and standard errors. Is there an easy way to do this from my ans object? Or a simple way to modify this code to do it?

Upvotes: 3

Views: 3457

Answers (1)

dvarelas
dvarelas

Reputation: 988

You can just add these two lines of code to get the p-values and the std errors.

pValues <- sapply(1:length(ans), function(x) {summary(ans[[x]])$coefficients[5]})

sd <- sapply(1:length(ans), function(x) {summary(ans[[x]])$coefficients[3]})

Upvotes: 3

Related Questions