当前位置: 首页 > news >正文

如何快速绘制logistic回归预测模型的ROC曲线?

临床预测模型,也是临床统计分析的一个大类,除了前期构建模型,还要对模型的预测能力、区分度、校准度、临床获益等方面展开评价,确保模型是有效的!

其中评价模型的好坏主要方面还是要看区分度和校准度,而区分度方面目前最常见的是ROC曲线(Receiver Operating Characteristic,中文名字叫“受试者工作特征曲线”),由灵敏度为纵轴,(1-特异度)为横轴绘制而成,用于评价X(检验变量)对于Y(状态变量)的预测准确率情况。越靠左上方,说明模型的预测准确性越好,可以让读者直观地看到某指标各取值对结局指标的诊断或预测能力

1cefd55425fc928ba73a50e6d716bb61.png

此外,ROC曲线还会使用曲线下面积(AUC)的大小对模型进行评价,AUC的取值范围为0.5到1之间,曲线下面积越大,越接近于1,模型的诊断或预测效果越好:

  • AUC在0.9以上时,准确性较高

  • 在0.7~0.9时,有一定准确性

  • AUC在 0.5~0.7时,准确性较低

  • AUC=0.5时,说明诊断方法完全不起作用,无诊断价值。

  • AUC<0.5不符合真实情况,在实际中极少出现

理论知识比较好理解,但是实际分析中,想要绘制出精美的ROC曲线,还要花一番功夫,像是常见的R语言软件就需要大量参数进行调整,并且训练集和验证集图像还需要分开绘制两遍......

因此,这里为大家推荐一个统计分析小工具——风暴统计,可以超快速绘制完成临床预测模型的ROC曲线,一次性给出训练集与验证集的图像!

风暴统计是由浙江中医药大学的郑卫军教授基于R语言开发的,不仅结果准确性有保障,并且全部实现菜单化操作,统计小白也可以轻松上手,绘制精美的ROC曲线!

下面我们就结合一份实操数据来为大家详细介绍一下具体的操作步骤吧!

实操具体网址:https://www.zstats.cn/software/logpre3/

或者百度、必应Bing搜索“风暴统计”

本平台上线的所有工具都是免费的

9e8924212113e88da81149f277e292ce.png

1.进入风暴统计平台

首先,浏览器搜索风暴统计,依次点击"风暴智能统计"——"临床预测模型"——"logistic临床预测模型"!进入分析界面后,根据提示,完成数据的导入与整理。

这里我们不再赘述数据的导入与整理过程,详细教程大家可以点击下方链接:

详细指南!风暴统计如何高效导入数据,统计分析快人一步?

详细版!如何利用风暴统计进行数据的整理转换?

304f981f08b778c878d56add682c6a55.png

2.数据集拆分

预测模型都需要内部验证,内部验证的方法有随即拆分、交叉验证、Boostrap等。但风暴统计平台目前仅能做随即拆分法内部验证。

随机拆分法内部验证,顾名思义就是将原始数据集按照7:3(常见)或者6:4等比例进行拆分,一部分用于建模,另外一部分用于验证模型。

ef8d2fe343ecadeed90cd86e65532962.png

风暴统计支持两种拆分方式:随机拆分法、导入已拆分好的数据。

  • 如果选择“随机拆分”,需要设置随机种子拆分比例。随机种子对于数字位数没有要求,作用是可以保证拆分数据的分析结果可以复现,平台默认是1234,拆分比例更好理解,只需要拖动滑条,蓝色部分就是训练集的数据占总数据的比例。

5097e769dd92e16d551a3ef4268b66f7.png

  • 如果选择“导入已拆分好的数据”,需要设置事先在导入的数据集中增加一列用于区分训练集和验证集的变量,比如新增列叫"group",通过编码赋值1代表训练集,2代表验证集。那么第一步:选入区分训练集与验证集的变量,第二步:勾选代表训练集的编码值!

    注:“导入已拆分好的数据”不仅可以做内部验证,更重要还可以用来做外部验证哦!同样需要一列变量来区分训练集和外部验证集!

e902bffa509201dbc22a01f8f897792a.png

3.构建预测模型

完成数据记得拆分后,我们就可以开始构建预测模型啦!请注意,预测模型的构建仅在训练集开展哦!

预测模型的本质,简单来说,也就是多因素回归模型!多因素回归听上去是不是平易近人许多?风暴统计可以超快速完成这一步!

首先,选择模型变量——因变量自变量。因变量必须是以0和1赋值的哦!自变量就可以放入我们数据中所有可能的预测因子!

4a437103d19e2a356a1e75c7d6727f97.png

接着,定义模型自变量筛选的方式,满足筛选条件的自变量会进入多因素回归模型!

注:多因素模型中的所有变量就是我们最终预测模型中全部的预测因子了,并不只是多因素中有意义的变量哦!如果希望预测模型中的变量P值均小于0.05,可以选择逐步回归分析中"根据P<0.05筛选"的选项!

ad685825ae5e16e8d134262121bee59e.png

自变量筛选方式也有3种:

  • 基于分组差异性结果

  • 基于单因素回归结果

  • 自定义

前两个比较相似,区别就在是根据差异性P值还是单因素P值进行筛选!

如果选择了"基于分组差异性"或"基于单因素回归",只需要完成2步设置。

第一步,P阈值的选择,如果自变量个数过少,可以适当放宽标准,0.1、0.2也都是可以的。当选择不限制时,单因素的全部自变量都将纳入多因素回归分析。

第二步,是否开展逐步回归,选择“否”,就是我们常见的先单后多分析,另外逐步回归方法,平台也提供了多种选择:双向逐步回归,向前逐步回归,向后逐步回归以及考虑到有时P值大于0.05的变量在逐步回归时也会留在模型中,新增了根据P<0.05的原则开展逐步回归!大家可以根据研究需要自行选择。

58882af8e7528f146c00ad21848d9d73.png

dfd243fef27007c208fbfe2f5eac0275.png

如果选择了自定义筛选自变量,比如实际研究中,预测因子的筛选也需要结合专业知识以及相关文献进行判断,纯数据驱动也不太好。假如变量A在临床中是十分重要的变量,但是受限于样本原因,单因素与差异性均没有统计学意义,这时候,我们可以自定义挑选预测因子,选择我们预期的预测因子,自行选择是否需要逐步回归!也是一条途径!

cc266fb5c57944470329a44119d6914a.png

选择完毕后,我们就得到了多因素回归的结果,现在多因素模型也就是我们最终的预测模型,列线图中会包含多因素回归中的全部变量!

386d87d8c016bb115558b58498b29fd0.png

完成预测模型的构建后,就可以同步给出模型得到验证结果啦!

4.模型区分度评价

点击"ROC曲线与AUC面积"模块,结果也同时输出,包括有训练集ROC曲线、验证集ROC曲线、ROC曲线叠加

1ce10e4175d38d19f99b827d12d43bb2.png

ROC曲线叠加:

9b6078695bc290e25477261ee42a4326.png

如果需要修改图例名称,可以在左侧的"AUC设置"这里进行修改,但是目前平台仅支持英文标签,如需添加中文,还需要下载pdf后,再进行二次编辑。

4cb51fee3af24693637de0111667ed69.png

除此之外,平台还支持对ROC曲线的颜色、坐标轴、标签进行修改,将R语言繁杂的代码参数,全部简化为了菜单式操作!

df6a3b7a55a69b794acf6d93bd98fe5a.png

5.下载结果

最后在曲线下载设置中,选择下载图片,保存类型(支持pdf、jpeg、png、tiff),曲线页面,中文字体。

注:如果图形下载下来不完全,可以在曲线页面设置自定义。自由调整图片的长度和宽度,避免下载图形不完整的情况

选择完毕后,就可以下载ROC曲线啦!

d09944155048a02c36faf4037b64c88d.png

下载下来的图片也十分清晰!

24ab381e873f6e892c4e79093b22f93a.png

以上就是风暴统计平台绘制ROC曲线的全部操作流程啦!如果您在使用过程中出现报错,可以参考下方推文,排查一下问题所在哦!

答疑 | 风暴统计更换服务器后,为什么总出现同样的报错?

ec650f2c6d9ec6cdf4ffc7becfe12407.png

相关文章:

如何快速绘制logistic回归预测模型的ROC曲线?

临床预测模型&#xff0c;也是临床统计分析的一个大类&#xff0c;除了前期构建模型&#xff0c;还要对模型的预测能力、区分度、校准度、临床获益等方面展开评价&#xff0c;确保模型是有效的&#xff01; 其中评价模型的好坏主要方面还是要看区分度和校准度&#xff0c;而区分…...

实现具有多个实现类的接口并为每个实现类定义一个名字的方法

在Java中&#xff0c;实现具有多个实现类的接口并为每个实现类定义一个名字的方法&#xff0c;可以通过使用工厂模式或服务定位器模式来完成。以下是使用工厂模式的一个示例&#xff1a; 定义接口和实现类 首先&#xff0c;定义一个接口和多个实现类&#xff1a; // 接口 publ…...

Linux解压缩命令

文章目录 前言1. tar - 打包和压缩文件2. gzip - 压缩文件3. gunzip - 解压缩gzip文件4. bzip2 - 压缩文件5. unzip - 解压缩zip文件6. zip - 压缩文件为zip格式7. 7z - 7-Zip压缩工具8. unrar - 解压缩RAR文件 前言 解压缩文件在Linux中是常见的任务&#xff0c;以下是一些常…...

如何在 Ubuntu 14.04 上使用 Iptables 实现基本防火墙模板

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站。 简介 实施防火墙是保护服务器的重要步骤。其中很大一部分是决定强制执行对网络流量的限制的个别规则和策略。像 iptables 这样的防火墙…...

jasypt对yml文件进行加密解密

目录 0.背景 1.依赖 2.yml文件 3.加密操作 0.背景 在日常开发中&#xff0c;我们一般会把账号密码以及一些用到的各种第三方服务的Access_Key都放入yml文件中&#xff0c;这时就有必要对yml文件进行加密处理了&#xff0c; jasypt是一款简单的对yml加密的工具 1.依赖 &l…...

vue3-openlayers 使用tianditu,wmts和xyz等source加载天地图切片服务

本篇介绍一下使用vue3-openlayers加载天地图切片&#xff0c;三种方法&#xff1a; 使用tianditu&#xff08;ol-source-tianditu内部实现其实用的wmts&#xff09;使用wmts&#xff08;ol-source-wmts&#xff09;使用xyz&#xff08;ol-source-xyz&#xff09; 1 需求 vue…...

npm、yarn、pnpm 最新国内镜像源设置和常见问题解决

1. npm 设置国内镜像源 1.1 镜像源概述 镜像源是软件包管理工具用来下载和安装软件包的服务器地址。由于网络原因&#xff0c;直接使用官方源可能会导致速度慢或连接失败的问题。国内镜像源可以提供更快的访问速度和更稳定的连接。 1.2 镜像源的选择 国内有许多可用的npm镜…...

Qt Object:智能即时聊天室项目

目录 1.项目介绍 2.设计思路 3.Pro文件配置 4.项目演示 5.项目开源 项目介绍 智能即时聊天室系统&#xff08;AIChatProject&#xff09;是一个高效、灵活的即时通讯解决方案。它融合了百度的开源大型语言模型——文心一言&#xff0c;通过API接口实现深度集成。系统专为聊天和…...

php,python aes加密反解

1. python版本 import base64 from Crypto.Cipher import AES from Crypto.Util.Padding import pad, unpadclass AESUtilCBC:def __init__(self, key, iv):self.key key.encode(utf-8)self.iv iv.encode(utf-8)self.pad_length AES.block_sizedef encrypt(self, data):try…...

基于Java学生选课管理系统设计和实现(源码+LW+调试文档+讲解等)

&#x1f497;博主介绍&#xff1a;✌全网粉丝10W,CSDN作者、博客专家、全栈领域优质创作者&#xff0c;博客之星、平台优质作者、专注于Java、小程序技术领域和毕业项目实战✌&#x1f497; &#x1f31f;文末获取源码数据库&#x1f31f; 感兴趣的可以先收藏起来&#xff0c;…...

阅读笔记——《Large Language Model guided Protocol Fuzzing》

【参考文献】Meng R, Mirchev M, Bhme M, et al. Large language model guided protocol fuzzing[C]//Proceedings of the 31st Annual Network and Distributed System Security Symposium (NDSS). 2024.&#xff08;CCF A类会议&#xff09;【注】本文仅为作者个人学习笔记&a…...

C#委托:事件驱动编程的基石

目录 了解委托 委托使用的基本步骤 声明委托(定义一个函数的原型&#xff1a;返回值 参数类型和个数&#xff09; 根据委托定义的函数原型编写需要的方法 创建委托对象&#xff0c;关联“具体方法” 通过委托调用方法&#xff0c;而不是直接使用方法 委托对象所关联的方…...

Git的下载安装及可视化工具小乌龟

一、 Git 的下载 第1步&#xff1a;下载Git&#xff0c;下载地址&#xff1a;Git for Windows 这个就需要去 Git 官网下载对应系统的软件了&#xff0c;下载地址为 git-scm.com或者gitforwindows.org&#xff0c;或者阿里镜像&#xff08;感谢评论区的星悸迷航同学&#…...

【面试实战】# 并发编程之线程池配置实战

1.先了解线程池的几个参数含义 corePoolSize (核心线程池大小): 作用: 指定了线程池维护的核心线程数量&#xff0c;即使这些线程处于空闲状态&#xff0c;它们也不会被回收。用途: 核心线程用于处理长期的任务&#xff0c;保持最低的线程数量&#xff0c;以减少线程的创建和…...

Pytest 读取excel文件参数化应用

本文是基于Pytest框架&#xff0c;读取excel中的文件&#xff0c;传入页面表单中&#xff0c;并做相应的断言实现。 1、编辑媒体需求 首先明确一下需求&#xff0c;我们需要对媒体的表单数据进行编辑&#xff0c;步骤如下&#xff1a; 具体表单如下图所示 1、登录 2、点击我…...

qt 一个可以拖拽的矩形

1.概要 2.代码 2.1 mycotrl.h #ifndef MYCOTRL_H #define MYCOTRL_H#include <QWidget> #include <QMouseEvent>class MyCotrl: public QWidget {Q_OBJECT public://MyCotrl();MyCotrl(QWidget *parent nullptr); protected:void paintEvent(QPaintEvent *even…...

C# 启动exe 程序

(1) publicbool Start () System.Diagnostics.Process process new System.Diagnostics.Process(); process.StartInfo.FileName "iexplore.exe"; //IE浏览器&#xff0c;可以更换 process.StartInfo.Arguments "http://www.baidu.com"; process.…...

Netty中的Reactor模型实现

Netty版本&#xff1a;4.1.17 Reactor模型是Doug Lea在《Scalable IO in Java》提出的&#xff0c;主要是针对NIO的。 其中的主从Reactor模式在Netty中的配置如下&#xff1a; EventLoopGroup bossGroup new NioEventLoopGroup(1); EventLoopGroup workerGroup new NioEv…...

dll丢失应该怎么解决,总结5种解决DLL丢失问题的方法

在数字时代&#xff0c;我们与计算机的每一天都密不可分。然而&#xff0c;就像所有技术产品一样&#xff0c;我们的计算设备也时不时地会出现一些问题&#xff0c;让人头疼不已。就在上周&#xff0c;我遭遇了一个令人崩溃的技术挑战——DLL文件丢失。这个看似微不足道的小问题…...

dial tcp 10.96.0.1:443: connect: no route to host

1、创建Pod一直不成功&#xff0c;执行kubectl describe pod runtime-java-c8b465b98-47m82 查看报错 Warning FailedCreatePodSandBox 2m17s kubelet Failed to create pod sandbox: rpc error: code Unknown desc failed to setup network for…...

VScode创建ROS项目 ROS集成开发环境

ROS使用VScode创建项目步骤 1.创建ROS工作空间2.启动VScode3.VScode编译ROS4.创建ROS功能包C语言开发Python语言开发 本文章介绍了如何在Ubuntu18.04系统下搭建VScode 的ROS项目 搭建项目分为一下几个步骤&#xff1a; 1.创建ROS工作空间 创建一个demo的ROS工作空间&#xff0…...

nodejs从基础到实战学习笔记-nodejs简介

一、Node.js简介 • Node.js是一个能够在服务器端运行JavaScript的开放源代码、跨平台JavaScript运行环境。 • Node采用Google开发的V8引擎运行js代码&#xff0c;使用事件驱动、非阻塞和异步I/O模型等技术来提高性能&#xff0c;可优化应用程序的传输量和规模。 1.1 特性 …...

2024年最新版------二进制安装部署Kubernetes(K8S)集群

Kubernetes二进制集群部署 文章目录 Kubernetes二进制集群部署资源列表基础环境一、环境准备1.1、绑定映射关系1.2、所有主机安装Docker1.3、所有主机设置iptables防火墙 二、生成通信加密证书2.1、master上成功CA证书2.2.1、创建证书存放位置并安装证书生成工具2.2.2、拷贝证书…...

【mysql】关键词搜索实现

关键词搜索实现两种方式 -- 方式1 模糊匹配搜索 -- 场景一&#xff1a;搜索出来地址内包含‘李’和‘中国’的 select * from tn_md_cust_link where address like concat (%李%) or address like concat (%中国%) -- 场景二&#xff1a;搜索地址或者名称包含 ‘181’ 的 …...

Python面试十问2

一、如何使用列表创建⼀个DataFrame # 导入pandas库 import pandas as pd# 创建一个列表&#xff0c;其中包含数据 data [[A, 1], [B, 2], [C, 3]]# 使用pandas的DataFrame()函数将列表转换为DataFrame df pd.DataFrame(data, columns[Letter, Number]) # 列名# 显示创建的…...

C# OpenCvSharp 图像处理函数-颜色通道-cvtColor

使用 OpenCvSharp 中的 cvtColor 函数进行图像颜色转换 在图像处理领域,颜色空间转换是一个非常常见的操作。OpenCvSharp 提供了一个强大的函数 cvtColor 来处理这类转换。本文将详细介绍 cvtColor 函数的使用方法,并通过具体的示例演示如何在实际项目中应用这些知识。 函数…...

总结之LangChain(三)——模型IO缓存

一、聊天模型缓存 LangChain为聊天模型提供了一个可选的缓存层。这有两个好处&#xff1a; 如果您经常多次请求相同的完成结果&#xff0c;它可以通过减少您对LLM提供程序的API调用次数来帮您节省费用。 它可以通过减少您对LLM提供程序的API调用次数来加快您的应用程序速度。…...

判断一个Java服务是不是GateWay

方法 直接在对应服务的url后变加上后缀/actuator/gateway/routes&#xff0c;看是否会返回Gateway的路由信息。 如果返回了GateWay的路由列表&#xff0c;则该服务为Gateway服务。...

三次插值曲线--插值技术

三次插值曲线 1.1.三次样条曲线 三次样条曲线的基本思想是&#xff0c;在给定的一系列点&#xff08;称为控制点或数据点&#xff09;之间&#xff0c;通过一系列三次多项式曲线段来拟合这些点&#xff0c;使得整个曲线既平滑又准确地通过所有控制点。 1.1.1.数学定义 给定…...

python循环结构

1.while 循环 语句&#xff1a; while 循环条件表达式&#xff1a; 代码块 else&#xff1a; 代码块 小练&#xff1a; 设计一百以内的偶数相加 n 0 while n < 100:n 1if n % 2 0 :print(n) 判断是不是闰年&#xff08;四年一润和百年不润&#xff0c;或者四百年一润&am…...

织梦cms做企业网站/北京网络营销公司排名

2019独角兽企业重金招聘Python工程师标准>>> 1&#xff0c;概述 定义 &#xff1a;枚举类是指实例的数量有限的类。比如表示性别的Gender类&#xff0c;它只有两个实例 Gender.FEMALE和Gender.MALE.&#xff1b; 2&#xff0c;例子&#xff1a; package springmvc.c…...

培训网站计时怎么破/济南seo排名优化推广

事务码MD61创建独立的生产计划...

大连最新消息今天/2022年搜索引擎优化指南

其实技术人和大众一样, 只是多了一层要与电脑交流的身份罢了. 而这样的一层应该是使得我们的生活更加的色彩化才是. 于是又注册了这个名为”左手代码”的订阅号. 始于代码, 又不仅仅是代码. 我想这才应该是一个技术人的初心吧. 2014年的那个暑假, 正好是我大学二年级结束, 或许…...

建设信用卡在网站挂失几步/seo海外推广

一、申请免费的域名 1、链接&#xff1a;http://www.ngrok.cc/login.html 2、注册账号及登录 3、开通隧道 注&#xff1a;隧道名称&#xff1a;brightbright属于自定义的 二、下载客户端 1、客户端下载地址&#xff1a;http://www.ngrok.cc 2、选择Ngrok客户端 3、根据实…...

做动态网站 和数据库交互/乔拓云建站平台

说实话&#xff0c;这是个老话题&#xff0c;有很多人都知道怎么传&#xff0c;但也有很多的朋友弄不清楚&#xff0c;折腾半天都没有结果&#xff0c;现在我在这里再分解一次。其实三个典型方法&#xff1a;1、利用QQ、微信传图片资料等&#xff1b;2、用电脑上软件&#xff0…...

wordpress网站插件下载/东莞seo优化排名推广

来源&#xff5c;华商韬略编辑&#xff5c;安小曼丁磊的变与不变。吴晓波说&#xff0c;他所见过的富人中&#xff0c;几乎没有一个是快乐的。仔细想后又改口了&#xff1a;哦&#xff0c;有一个&#xff0c;丁磊&#xff01;01表面不着急&#xff0c;暗中抓紧干2020年&#xf…...