【发布时间】:2015-12-27 16:04:12
【问题描述】:
我的目标是模拟一个可用于测试竞争风险的数据集
模型。我只是在尝试使用 survsim::crisk.sim 函数的简单示例,但是
它不会导致我期望的结果。
require(survival)
simulated_data <- survsim::crisk.sim(n = 100,
foltime = 200,
dist.ev = rep("weibull", 2),
anc.ev = c(0.8, 0.9),
beta0.ev = c(2, 4),
anc.cens = 1,
beta0.cens = 5,
nsit = 2)
model <- survreg(Surv(time, status) ~ 1 + strata(cause), data = simulated_data)
exp(model$scale)
## cause=1 cause=2
## 4.407839 2.576357
我希望这些数字与beta0.ev 相同。任何指向什么的指针
我可能会在模拟竞争风险数据方面做错或提出其他建议。
为了完成:我希望模拟数据中的事件遵循每个风险不同的 Weibull 分布。我希望能够在数据中指定一个层次和集群。审查可以遵循 Weibull 或 Bernouli 分布。
【问题讨论】:
-
检查 survreg 的示例并确保模型 survreg 拟合的参数化与 crisk.sim 相同。
-
survreg 的帮助页面特别警告我们有关 Weibull 参数的参数化。
# survreg's scale = 1/(rweibull shape) # survreg's intercept = log(rweibull scale)
标签: r simulation survival-analysis weibull