Stata:logistic 回归模型中的 ROC 与 AUC-lroc

发布时间:2021-11-08 阅读 290

Stata连享会   主页 || 视频 || 推文 || 知乎 || Bilibili 站

温馨提示: 定期 清理浏览器缓存,可以获得最佳浏览体验。

New! lianxh 命令发布了:
随时搜索推文、Stata 资源。安装:
. ssc install lianxh
详情参见帮助文件 (有惊喜):
. help lianxh
连享会新命令:cnssc, ihelp, rdbalance, gitee, installpkg

课程详情 https://gitee.com/lianxh/Course

课程主页 https://gitee.com/lianxh/Course

⛳ Stata 系列推文:

PDF下载 - 推文合集


作者:Bethune 学院
邮箱bethune0507@163.com


目录


1. 单个试验与联合试验

由于一个指标的诊断实验很难使灵敏度和特异度都变的很高,因此可以采用多个指标联合起来,进行诊断实验。联合试验可以分为两种类型:平行试验与系列试验。

由上图可知,为了排除某病,而缺乏灵敏度高的诊断方法时可采用平行试验,以提高灵敏度。为了确诊某病,在缺乏特异性高的诊断试验时,可采用系列试验,以提高特异度。

2. 单个试验与 logistics 回归模型

第一部分是两个指标的联合试验,当涉及更多个指标时,分类情况变得更为复杂。因此可以使用 logistics 回归模型,通过形成的预测概率或联合预测因子为分析指标,建立 ROC 曲线。该方法能将多指标综合为一个指标,从而实现了降维目的,尤其适用于有协变量或多指标联合诊断试验的分析评价。

logistic 回归模型在 ROC 曲线中的应用,考虑了混杂因素对疾病状态的影响,更注重诊断体系在医疗实践中的价值。也就是说,不单所评价指标对疾病有影响,其他诸如本研究中的年龄、性别、是否吸烟等因素的分布情况亦对疾病的发生起着重要作用,故将这些测量指标纳入对疾病产生影响的向量矩阵中。通过建立模型得到联合分布概率或联合预测因子,使其尽可能地更接近于总体的实际情况再进行评价。

3. 单个模型的 ROC

在 Stata 中,使用 lroc 命令在进行 logit 或 logistic 后,很容易获得 ROC 曲线下的面积。

. use "https://stats.idre.ucla.edu/stat/stata/notes/hsb2.dta", clear
. generate hon=write>=60  //create binary response variable
. logit hon female, nolog
Logistic regression                                     Number of obs =    200
                                                        LR chi2(1)    =   3.94
                                                        Prob > chi2   = 0.0473
Log likelihood = -113.6769                              Pseudo R2     = 0.0170
------------------------------------------------------------------------------
         hon | Coefficient  Std. err.      z    P>|z|     [95% conf. interval]
-------------+----------------------------------------------------------------
      female |      0.651      0.334     1.95   0.051       -0.003       1.305
       _cons |     -1.400      0.263    -5.32   0.000       -1.916      -0.884
------------------------------------------------------------------------------

. lroc
Logistic model for hon
Number of observations =      200
Area under ROC curve   =   0.5785

. predict xb1, xb  //create linear predictor for model 1 

4. 两个模型的 ROC

重复上述命令,得到第二个模型的 AUC 面积为 0.8330。

. logit hon female read, nolog

Logistic regression                                     Number of obs =    200
                                                        LR chi2(2)    =  60.40
                                                        Prob > chi2   = 0.0000
Log likelihood = -85.44372                              Pseudo R2     = 0.2612
------------------------------------------------------------------------------
         hon | Coefficient  Std. err.      z    P>|z|     [95% conf. interval]
-------------+----------------------------------------------------------------
      female |      1.121      0.408     2.75   0.006        0.321       1.921
        read |      0.144      0.023     6.19   0.000        0.099       0.190
       _cons |     -9.603      1.426    -6.73   0.000      -12.399      -6.808
------------------------------------------------------------------------------

. lroc
Logistic model for hon
Number of observations =      200
Area under ROC curve   =   0.8330

. predict xb2, xb  // create linear predictor for model 2

我们运行了两种不同的模型,并且ROC曲线下的面积为 0.578 和 0.8330。接下来,我们将使用带有 roccomp 命令的两个线性预测变量来测试 ROC 曲线下面积的差异。

. roccomp hon xb1 xb2, graph summary

                              ROC                     Asymptotic normal
                   Obs       area     Std. err.      [95% conf. interval]
-------------------------------------------------------------------------
xb1                200     0.5785       0.0388        0.50242     0.65456
xb2                200     0.8330       0.0301        0.77397     0.89205
-------------------------------------------------------------------------
H0: area(xb1) = area(xb2)
    chi2(1) =    34.91       Prob>chi2 =   0.0000

5. 参考资料

  • HOW CAN I TEST THE DIFFERENCE IN AREA UNDER ROC CURVE FOR TWO LOGISTIC REGRESSION MODELS -Link-
  • 陈卫中, 潘晓平, 倪宗瓒. logistic 回归模型在 ROC 分析中的应用[J]. 中国卫生统计, 2007, 24(1): 22-24. -Link-

6. 相关推文

Note:产生如下推文列表的 Stata 命令为:
lianxh logit, m
安装最新版 lianxh 命令:
ssc install lianxh, replace

相关课程

免费公开课

最新课程-直播课

专题 嘉宾 直播/回看视频
最新专题 文本分析、机器学习、效率专题、生存分析等
研究设计 连玉君 我的特斯拉-实证研究设计-幻灯片-
面板模型 连玉君 动态面板模型-幻灯片-
面板模型 连玉君 直击面板数据模型 [免费公开课,2小时]
  • Note: 部分课程的资料,PPT 等可以前往 连享会-直播课 主页查看,下载。

课程主页

课程主页

关于我们

  • Stata连享会 由中山大学连玉君老师团队创办,定期分享实证分析经验。
  • 连享会-主页知乎专栏,700+ 推文,实证分析不再抓狂。直播间 有很多视频课程,可以随时观看。
  • 公众号关键词搜索/回复 功能已经上线。大家可以在公众号左下角点击键盘图标,输入简要关键词,以便快速呈现历史推文,获取工具软件和数据下载。常见关键词:课程, 直播, 视频, 客服, 模型设定, 研究设计, stata, plus, 绘图, 编程, 面板, 论文重现, 可视化, RDD, DID, PSM, 合成控制法

连享会小程序:扫一扫,看推文,看视频……

扫码加入连享会微信群,提问交流更方便

✏ 连享会-常见问题解答:
https://gitee.com/lianxh/Course/wikis

New! lianxhsongbl 命令发布了:
随时搜索连享会推文、Stata 资源,安装命令如下:
. ssc install lianxh
使用详情参见帮助文件 (有惊喜):
. help lianxh