我是生存分析的新手,我不确定我是否正确格式化数据。 使用这个虚拟数据:
id <- c(rep("1", 10), rep("2", 10), rep("3", 10), rep("4", 10), rep("5", 10))
age <- c((15:24), (35:44), (45:54), (55:64), (40:49))
event <- c(rep("0", 10),
0, 0, 0, 0, 0, 0, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
0, 0, 0, 1, 1, 1, 1, 1, 1, 1,
0, 0, 0, 2, 2, 2, 2, 2, 2, 2)
group <- c("a", "a", "a", "a", "a", "a", "a", "a", "a", "a",
"a", "a", "a", "a", "b", "b", "b", "b", "a", "a",
"a", "a", "a", "a", "b", "b", "b", "a", "b", "b",
"a", "a", "a", "a", "c", "c", "c", "c", "c", "c",
"d", "d", "d", "d", "a", "a", "a", "a", "a", "a")
df <- data.table(id, age, event, group)
df$tstart <- integer(0)
df$tstop <- df$age
df[, tstart := shift(tstop), by = id]
df$tstart <- ifelse(is.na(df$tstart), 14, df$tstart)
v1 <- survfit(Surv(age, event == 1) ~ group, data = df)
v2 <- survfit(Surv(tstart, tstop, event == 1) ~ group, data = df)
在事件中,1 =我关注的事件,0 =事件尚未发生,2 =因其他原因而丢失。
我正在考虑&#34;事件的年龄&#34;取决于&#34; group&#34;你进去了。我看到代码格式化为:
coxph(Surv(age, event == 1) ~ group)
和
coxph(Surv(tstart, tstop, event == 1) ~ group)
但是根据我使用的代码,我会得到不同的结果,并且KM图也看起来完全不同。我需要数据,因为我有时间变化的协变量。
任何人都可以告诉我哪里出错了吗?
感谢。