【问题标题】:How to cluster standard errors using Stata's stcrprep如何使用 Stata 的 stcrprep 对标准错误进行聚类
【发布时间】:2017-07-09 20:57:43
【问题描述】:

我正在使用 Stata 对存在竞争风险的累积发生率函数进行建模。每个法术都以事件的发生(“失败”)结束,但对象有可能在之后进入新的法术。因此,法术不是独立的,而是嵌套在主体中。

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

有谁知道如何使用 stcrprep 对标准错误进行聚类?

【问题讨论】:

    标签: stata survival-analysis


    【解决方案1】:

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

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

    1. 使用stcrprep 为生存分析准备数据。
    2. 使用stset 创建正确的格式,将权重指定为pweights。将它们指定为 iweight 将无法估计稳健和集群稳健的标准误差。
    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)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-10-27
      • 2021-12-08
      • 2014-07-19
      • 2018-08-19
      • 1970-01-01
      • 2018-09-20
      • 1970-01-01
      相关资源
      最近更新 更多