我通读了所有类似于“如何计算事件发生时间/事件之间的时间”的问题以及Surv()、coxph、coxme的文档。我仍然需要帮助来确认我是否正确设置了数据。这代表了我的数据:
library(data.table)
library(survival)
library(coxme)
snippet <- data.table(age=c(rep(74,3),rep(73,3),rep(69,3)),
sex=c(rep(0,3),rep(1,3),rep(0,3)),
year=c(0:2,0:2,0:2),
CHEM_376=c(0.036469233, 0.262701338, 0.120690616, -0.197499658, -0.231236627, -0.368920289, -0.106358638, -0.055245055, -0.141187835),
subject=c(rep(1,3),rep(2,3),rep(3,3)),
status=c(0,0,1,0,0,1,0,0,1))
我想运行考克斯比例风险回归,受试者ID作为随机效应(来自软件包coxme),每年测量的化学CHEM_376,一些协变量如年龄和男性。以下运行,但我不确定是否正确:
coxph(Surv(time=year, event=status) ~ CHEM_376 + age + sex + cluster(subject), data=snippet)
软件包是否理解year是这些观察发生时的年份,而不是状态更改的时间?我是否需要计算年份,直到每个人的状态更改为1?我不知道如何做到这一点。请注意,year不是posix日期时间格式。感谢您的帮助。
1条答案
按热度按时间ubof19bj1#
当您使用
Surv
创建Survival对象时,time
参数是观察开始和事件发生之间的间隔,以年数(或天,周等)表示。您还可以提供time
和time2
参数来指示生存间隔的开始和结束时间。参数
event
指示事件是否发生:1表示是(受试者死亡),0表示否(受试者存活或删失-退出研究等)。Google“Survival analysis with R”可以找到多篇关于这方面的文章。