0

我认为这应该很容易,但我无法完全理解它。

我有以下代码:

library(survival)
cox <- coxph(Surv(SURV, DEAD)~YEAR, data)
summary(cox)

但我希望将结果分解为各个年份。

以下是 SPSS 语法和解决方案的样子:

COXREG surv /STATUS=dead(1) /CONTRAST (year)=Indicator(1)
 /METHOD=ENTER year /PRINT=CI(95)
 /CRITERIA=PIN(.05) POUT(.10) ITERATE(20).
EXECUTE.

在此处输入图像描述

和 STATA 中的相同:

xi: stcox i.year

这是输出

str(data)

在此处输入图像描述

4

2 回答 2

1

您没有向我们展示 str(data) 或如何构建给出的“数据”的可重现示例。我怀疑“YEAR”会变成一个数字向量。如果它是一个因子变量,您会看到一个截距和 n-1 系数。Interecpt 系数将与“年份”相同,其他系数将与 year(n) 值匹配。您告诉 SPSS 引擎“年份”是一个“指标”,但您没有对 R 引擎提供同样的礼貌。

尝试这个:

data$year.ind <- factor(data$year)  # equivalent of SPSS INDICATOR
                                    # or SAS /CLASS
cox.mdl <- coxph(Surv(SURV, DEAD)~YEAR, data)
as.matrix(coef(coc.mdl)
summary(cox.mdl)
于 2013-05-17T03:50:39.660 回答
0

R 经常将计算和结果的显示分开,以提供更多的自由度。我假设您需要 的预测功能coxph (?predict.coxph)

文档页面底部有示例,很可能是您想要的

predict(cox, type="terms")
于 2013-05-14T10:09:06.800 回答