问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

用ROC曲线检验模型?无需代码,用SPSS也能绘制出好看的ROC曲线哦!

创作时间:
作者:
@小白创作中心

用ROC曲线检验模型?无需代码,用SPSS也能绘制出好看的ROC曲线哦!

引用
CSDN
1.
https://blog.csdn.net/m0_69097016/article/details/141362128

ROC简介

ROC曲线的全称是Receiver Operating Characteristic Curve(受试者工作特征)。

ROC曲线是用来检验模型的预测能力的常用方式。

ROC的常用指标是AUC,全称是area under the curve(曲线下面积)。

AUC越大,表明模型的预测能力越好。

一般而言:

  • AUC=1:模型能够完美区分正负样本
  • 0.85≤AUC≤0.95:预测效果优秀
  • 0.7≤AUC≤0.85:预测效果良好
  • 0.5≤AUC≤0.7:有一定的预测能力,但效果较低
  • AUC=0.5:预测能力与随机猜测无异
  • AUC<0.5:预测能力比随机猜测还差

我们常做的横断面研究,常常需要分析一些自变量对某一个因变量的关系,这时候可以用上ROC曲线。以下是一个简单的举例。

示例说明

  1. 数据

自变量:人口学特征如性别、年龄、婚姻、学历、体重指数等分类变量

因变量:是否患有焦虑症(二分类变量)

  1. 分析目的

① 自变量与因变量的关系(某一个自变量与因变量的关系)

② 多个自变量构建出的模型对焦虑症的预测能力

分析思路

可先通过单因素和多因素的logistic回归判断哪些自变量对因变量是有影响,有统计学意义的,也就是P<0.05。再将有统计学意义的变量构建出一个模型,这个模型来预测焦虑症。那么我们就可以通过绘制ROC曲线来判断模型的预测能力。

数据分析

此处省略利用SPSS进行logistic分析的过程。假设得出的结果是多因素logistic回归结果显示性别、年龄、婚姻、学历、体重指数都与焦虑症正向相关。

SPSS建立模型

  1. 分析→回归→二元logistic

  2. 将变量放入相应的变量框

  3. 在“保存”中选中“概率”,点击继续

  4. 变量列表会多出一列,就是预测概率,可以理解为预测值,这个预测值将会用来与实际值比较,绘制ROC曲线

SPSS绘制ROC曲线

  1. 分析→ROC曲线(不同SPSS版本这个功能位置不同,有的在“分类”模块里面)

  2. 将“预测概率”放入检验变量,将“焦虑症”(实际值)放入状态变量

  3. “状态变量值”一般指的是阳性的变量值,这里的数据有焦虑症用1表示,无焦虑症用0表示。所以这里的状态变量值为1。“显示”可以勾选前三个

  4. 在SPSS的输出中,看曲线和曲线下面积值

区域下面积就是AUC值,是要得出的数据

这个AUC值还可以,模型预测能力良好

双击图像可以唤出图像编辑器对横纵坐标、颜色等进行编辑

根据需要编辑图表大小,填充与边框,变量

单击一次可以变成可输入的文本框,转成英文标题

双击轴标题可以改变字号,颜色等

怎么保存编辑好的图呢?

在“编辑”下面点击“复制图表”,可以把图表粘贴到word中保存下来

这样ROC曲线就画好咯

当需要在一张图中绘制多条ROC曲线时,就可以用R语言绘制,下期再更新。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号