2017-02-20 19 views
1

我使用Stata在存在竞争风险时对累积发生函数进行建模。每个咒语以发生事件(“失败”)结束,但受试者有可能在之后输入新的咒语。因此咒语不是独立的,而是嵌套在主体中。如何使用Stata的stcrprep将标准错误聚类

标准Stata命令stcrreg可以通过建模在主体级别聚集的标准错误来处理此结构。但是,我的数据集非常庞大(超过300万观测值),计算时间很长。其他用户建议使用用户编写的stcrprep程序,该程序也具有其他功能。

有谁知道如何使用stcrprep集群标准错误?

回答

1

我从stcrprep帮助文件中的信息中找到了解决方案,并在命令的作者(http://repec.org/usug2013/lambert.uk13.pdf)的演示中进行了说明。

聚集的标准错误可以很容易地实现如下。

  1. 使用stcrprep准备生存分析数据。
  2. 使用stset创建正确的格式,将权重指定为pweights。将它们指定为iweights会使得鲁棒和群集健壮标准错误的估计不可能。
  3. 使用stcox进行竞争风险回归并指定期望的,vce()选项。请注意,通过这种数据准备方式,这将产生与stcrreg完全相同的结果。

对于有兴趣的读者,在竞争性心血管疾病和死亡的其他原因,与审查意见的存在估计的患癌症的风险的一个例子,和患者在治疗中聚簇:

use "http://www.stata-journal.com/software/sj4-2/st0059/prostatecancer", clear 
stset time, failure(status=1,2,3) id(id) //specify all possible events 
stcrprep, events(status) keep(treatment age therapy) trans(1) //trans creates failcode (event of interest) 
gen event = failcode == status 
stset tstop [pw=weight_c], failure(event==1) enter(tstart) 
stcox treatment age, vce(cluster therapy)