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

R语言复现:如何利用logistic逐步回归进行影响因素分析?

Logistic回归在医学科研、特别是观察性研究领域,无论是现况调查、病例对照研究、还是队列研究中都是大家经常用到的统计方法,而在影响因素研究筛选自变量时,大家习惯性用的比较多的还是先单后多,P<0.05纳入多因素研究,很少用逐步回归法,有些同学可能听过但是了解也不多,这里先简单介绍一下。

那么什么时候推荐用逐步回归呢?有以下2种情况,可以考虑使用:

①构建预测模型时候,就放心大胆的用。其他场景,一般不建议用逐步回归法。

②探索性研究、探讨多个影响因素时,候选的影响因素实在太多(单因素分析后P值<0.05者,仍然超过10个),或者样本量不大。

逐步回归法的原理听上去很复杂,但是用R语言几行代码也可以搞定,只是R语言需要一定的代码基础,一时半会儿也无法学会,因此,这里结合实操案例为大家介绍一个智能在线免费统计分析平台——风暴统计

一、实操数据介绍

1372a1e441a211372f776d765cea61f7.png

这里我们使用的是R语言自带数据集MASS中的birthwt,birthwt是一份与婴儿出生体重低相关的危险因素数据,其中包含的变量见下表,根据研究设计,以“low”作为结局变量。

二、风暴统计智能在线免费平台复现

目前风暴统计平台可以非常快速准确的完成logistic回归,只需2步!

  • 选入回归自变量

  • 选择自变量筛选方式

全部是菜单式操作,完成后,界面直接给出规范三线表结果!还可以随着变量的调整实时更新结果,在数据探索初期,可以节省不少工作量!在撰写报告时,也不用再手工绘制三线表,填写数据了!统计小白也可以轻松上手!

1.logistic回归自变量选择

首先,选入变量,包括因变量定量自变量分类自变量

3c0f2c0b3ae059be0ed2f0984cae35b4.png

①因变量

这里因变量建议使用0和1进行表示,0代表阴性结局(如:未患病、二分类变量中值较小的组),1代表阳性结局(如:患病或二分类结局中值较大的组)。

②定量自变量

平台会将分类数大于5的变量自动归为定量自变量,并在选取定量自变量时,优先显示在上方,便于选取。

67420f2fb31eefd36aba325a1f9a4f29.png

③分类自变量

同理,分类数小于5类的变量归入分类变量,在选取变量时,优先显示分类变量。

6a48cb3d2c6cc5eb72246f7044289448.png

接着,选择自变量的筛选方式,包括先单后多法逐步回归法

e6078b6629559157bb11f1571aebc6f6.png

2.选择自变量筛选方式

根据研究需要,如果需要开展先单后多的自变量筛选方式,那么“是否开展逐步回归分析”选择“否”。P阈值自行选择,如果自变量个数过少,可以适当放宽标准,0.1、0.2也都是可以的。当选择不限制时,选入的全部自变量都将纳入多因素回归分析。

如果需要选择逐步回归法,平台也提供了多种选择:双向逐步回归,向前逐步回归,向后逐步回归以及考虑到有时P值大于0.05的变量在逐步回归时也会留在模型中,新增了根据P<0.05的原则开展逐步回归

这里我们选择单因素P<0.05的变量进入多因素开展逐步回归。

e79d086db47b1a76de2f1f58f6e7fe35.png

3.下载结果

平台给出了多种结果展示,仅展示单因素回归结果仅展示多因素回归结果单因素+多因素显示在同一个表格中!

4e29460fa5eb2580beb9011c310cfe54.png

然后也可以选择小数位数,默认情况下,P值为3位小数,其他统计量为2位小数。

指定小数位数后,P值与统计量的小数位数将会统一。调整完成后,下载最终的三线表结果,平台支持下载excel或word

0a980857db0f7b7038ed8319fa9da8f7.png

三、R语言软件复现

这里采用autoReg包,autoReg包是一款功能十分强大的R包,不仅可以快捷完成基线表的制作,还可以直接一行代码输出回归分析(支持线性模型、广义线性模型和比例风险模型)的表格。

1.logistic回归模型构建

使用glm() 函数构建回归模型,glm(y~x1+x2+x3+x4+x......,data=数据集名,family="binomial"),指定因变量与自变量,设置数据集名。

logfit<-glm(low ~ age + lwt + race + smoke + ptd + ht + ui + ftv,data=bwt,family = "binomial")
summary(logfit)

此处参数family规定了回归模型的类型:family="binomial"指适用于二元离散因变量(binary)。

2.逐步回归法

autoReg逐步回归法的参数,就是Final=T 还是F,Final=T 提供逐步回归分析结果。另外,还有threshold,设定P值来挑选单因素分析的变量开展多因素回归。

logreg4<-autoReg(logfit,uni=TRUE,threshold=0.05, final=T)   #final=T逐步回归
logreg4
logtable4<-myft(logreg4)

d795925d53fa951627cac06c4507d725.png

四、总结

通过对比,风暴统计与R语言先单后多的分析结果完全一致,风暴统计对于P值还有单独成列,结果更加清晰直观!这也是由于平台的构建依托于R代码进行分析。同时结果输出更加快捷,迅速,大家进行统计分析时不妨试一试!

1e08f19146f2ff7f02062644aed9b923.png

a2a4a26721b9f1ec326d8768e7d0dc95.png

56b5d40fe292cd25ffb1ff38439a1459.png

相关文章:

R语言复现:如何利用logistic逐步回归进行影响因素分析?

Logistic回归在医学科研、特别是观察性研究领域&#xff0c;无论是现况调查、病例对照研究、还是队列研究中都是大家经常用到的统计方法&#xff0c;而在影响因素研究筛选自变量时&#xff0c;大家习惯性用的比较多的还是先单后多&#xff0c;P&#xff1c;0.05纳入多因素研究&…...

【MySQL使用】show processlist 命令详解

show processlist 命令详解 一、命令含义二、命令返回参数三、Command值解释四、State值解释五、参考资料 一、命令含义 对于一个MySQL连接&#xff0c;或者说一个线程&#xff0c;任何时刻都有一个状态&#xff0c;该状态表示了MySQL当前正在做什么。SHOW PROCESSLIST 命令的…...

分类算法(Classification algorithms)

逻辑回归(logical regression&#xff09;&#xff1a; 逻辑回归这个名字听上去好像应该是回归算法的&#xff0c;但其实这个名字只是在历史上取名有点区别&#xff0c;但实际上它是一个完全属于是分类算法的。 我们为什么要学习它呢&#xff1f;在用我们的线性回归时会遇到一…...

深度学习-Softmax 回归 + 损失函数 + 图片分类数据集

Softmax 回归 损失函数 图片分类数据集 1 softmax2 损失函数1均方L1LossHuber Loss 3 图像分类数据集4 softmax回归的从零开始实现 1 softmax Softmax是一个常用于机器学习和深度学习中的激活函数。它通常用于多分类问题&#xff0c;将一个实数向量转换为概率分布。Softmax函…...

分布式锁从0到1落地实现01(mysql/redis/zk)

1 准备数据库表 CREATE TABLE user ( id bigint(20) NOT NULL COMMENT 主键ID, name varchar(30) DEFAULT NULL COMMENT 姓名, age int(11) DEFAULT NULL COMMENT 年龄, email varchar(50) DEFAULT NULL COMMENT 邮箱, PRIMARY KEY (id) ) ENGINEInnoDB DEFAULT CHARSETutf8;I…...

安全运营方案的基本框架和关键要素

一、前言 阐述安全运营方案的目的和重要性。强调安全运营与组织整体战略目标的关联。 二、安全运营原则 确立安全运营的基本原则&#xff0c;如保密性、完整性和可用性。明确安全责任划分&#xff0c;确保各部门和人员履行安全职责。 三、安全风险评估与管理 进行全面的安…...

用C语言执行SQLite3的gcc编译细节

错误信息&#xff1a; /tmp/cc3joSwp.o: In function main: execSqlite.c:(.text0x100): undefined reference to sqlite3_open execSqlite.c:(.text0x16c): undefined reference to sqlite3_exec execSqlite.c:(.text0x174): undefined reference to sqlite3_close execSqlit…...

matlab双目相机标定-需要什么参数、怎么获得

相机标定目的&#xff1a;获得相机内参、外参、畸变系数&#xff0c;摄像头的内参(f,1/dx,1/dy,cx,cy)、畸变参数(k1,k2,k3,p1,p1)和外参(R,t)&#xff0c;用于接下来的双目校正和深度图生成从而实现二维到三维的转换。 相机标定方法&#xff1a;opencv 双目相机标定以及立体…...

大型语言模型的智能助手:检索增强生成(RAG)

背景 在人工智能的浪潮中&#xff0c;大型语言模型&#xff08;LLMs&#xff09;如GPT系列和LLama系列在自然语言处理&#xff08;NLP&#xff09;领域取得了显著成就。它们能够完成复杂的语言任务&#xff0c;如文本摘要、机器翻译、甚至创作诗歌。然而&#xff0c;这些模型在…...

Ubuntu 安装谷歌拼音输入法

一、Fcitx 安装 在Ubuntu 下&#xff0c;谷歌拼音输入法是基于Fcitx输入法的。所以&#xff0c;首先需要安装Fcitx。一般来说&#xff0c;Ubuntu最新版中都默认安装了Fcitx&#xff0c;但是为了确保一下&#xff0c;我们可以在系统终端中运行如下命令&#xff1a; sudo apt ins…...

修改MonkeyDev默认配置适配Xcode15

上一篇文章介绍了升级Xcode15后&#xff0c;适配MonkeyDev的一些操作&#xff0c;具体操作可以查看&#xff1a;Xcode 15 适配 MonkeyDev。 但是每次新建项目都要去修改那些配置&#xff0c;浪费时间和精力&#xff0c;这篇文章主要介绍如何修改MonkeyDev的默认配置&#xff0…...

deepinlinux打包deb文件完善

最近学习了一篇qt入门文章&#xff0c;做了一个小应用&#xff0c;要给另一台电脑用时发现还需考虑另一台没有qt&#xff0c;要把相关库带过去&#xff0c;后来就学了打包成deb安装包&#xff0c;看起来更专业。 win下搜索qt依赖库的程序是windeployqt&#xff0c;先将应用输出…...

Android studioSDK集成:com.yechaoa.yutilskt

文章目录 1、工具介绍2、集成 1、工具介绍 com.yechaoa.yutilskt是一个Android开发工具库&#xff0c;提供了一些常用的工具类和方法&#xff0c;方便开发者进行Android应用程序的开发。该库包含了以下功能&#xff1a; 网络请求工具类&#xff1a;提供了简化的网络请求方法&…...

openssl3.2 - exp - PEM <==> DER

文章目录 openssl3.2 - exp - PEM <> DER概述笔记加密用的私钥(带口令保护) - PEM > DER加密用的私钥(不带口令保护) - DER > PEM将不带口令的PEM转成带口令的PEM支持口令的算法备注END openssl3.2 - exp - PEM <> DER 概述 想将客户端私钥 服务端公钥 数…...

云计算的部署方式(公有云、私有云、混合云、社区云)

云计算的部署方式(公有云、私有云、混合云、社区云) 目录 零、00时光宝盒 一、云计算的部署方式 1.1、公有云&#xff08;Public Cloud&#xff09; 1.2、私有云&#xff08;Private Cloud&#xff09;  1.3、混合云&#xff08;Hybrid Cloud&#xff09; 1.4、社区云&am…...

umi4 项目使用 keepalive 缓存页面(umi-plugin-keep-alive、react-activation)

umi4使用keepalive 配置文件config\config.ts export default defineConfig({plugins: [umi-plugin-keep-alive], });安装add umi-plugin-keep-alive yarn add umi-plugin-keep-alive页面 A import { KeepAlive, history, useAliveController } from umijs/max; const Page…...

new;getline();重载<<和>>

面向对象程序设计的优点&#xff1a; 易维护易扩展模块化&#xff1a;通过设置访问级别&#xff0c;限制别人对自己的访问&#xff0c;保护了数据安全 int main(){ return 0;} 返回值0在windows下编程一般没用&#xff0c;但是在linux中编程&#xff0c;返回值有时有用 汇编与…...

python报错

Missing optional dependency ‘xlrd’. Install xlrd > 1.0.0 for Excel support Use pip or conda to install xlrd 安装xlrd库...

Android14 Handle机制

Handle是进程内部, 线程之间的通信机制. handle主要接受子线程发送的数据, 并用此数据配合主线程更新UI handle可以分发Message对象和Runnable对象到主线程中, 每个handle实例, 都会绑定到创建他的线程中, 它有两个作用,: (1) 安排消息在某个主线程中某个地方执行 (2) 安排…...

spark 总结

1.spark 配置文件 spark-default.conf spark.yarn.historyServer.address xiemeng-01:18080 spark.history.port18080 hive-site.xml <configuration><property><name>javax.jdo.option.ConnectionURL</name> </property><property>&…...

调用支付宝接口响应40004 SYSTEM_ERROR问题排查

在对接支付宝API的时候&#xff0c;遇到了一些问题&#xff0c;记录一下排查过程。 Body:{"datadigital_fincloud_generalsaas_face_certify_initialize_response":{"msg":"Business Failed","code":"40004","sub_msg…...

css实现圆环展示百分比,根据值动态展示所占比例

代码如下 <view class""><view class"circle-chart"><view v-if"!!num" class"pie-item" :style"{background: conic-gradient(var(--one-color) 0%,#E9E6F1 ${num}%),}"></view><view v-else …...

【CSS position 属性】static、relative、fixed、absolute 、sticky详细介绍,多层嵌套定位示例

文章目录 ★ position 的五种类型及基本用法 ★ 一、position 属性概述 二、position 的五种类型详解(初学者版) 1. static(默认值) 2. relative(相对定位) 3. absolute(绝对定位) 4. fixed(固定定位) 5. sticky(粘性定位) 三、定位元素的层级关系(z-i…...

Python如何给视频添加音频和字幕

在Python中&#xff0c;给视频添加音频和字幕可以使用电影文件处理库MoviePy和字幕处理库Subtitles。下面将详细介绍如何使用这些库来实现视频的音频和字幕添加&#xff0c;包括必要的代码示例和详细解释。 环境准备 在开始之前&#xff0c;需要安装以下Python库&#xff1a;…...

JUC笔记(上)-复习 涉及死锁 volatile synchronized CAS 原子操作

一、上下文切换 即使单核CPU也可以进行多线程执行代码&#xff0c;CPU会给每个线程分配CPU时间片来实现这个机制。时间片非常短&#xff0c;所以CPU会不断地切换线程执行&#xff0c;从而让我们感觉多个线程是同时执行的。时间片一般是十几毫秒(ms)。通过时间片分配算法执行。…...

鸿蒙DevEco Studio HarmonyOS 5跑酷小游戏实现指南

1. 项目概述 本跑酷小游戏基于鸿蒙HarmonyOS 5开发&#xff0c;使用DevEco Studio作为开发工具&#xff0c;采用Java语言实现&#xff0c;包含角色控制、障碍物生成和分数计算系统。 2. 项目结构 /src/main/java/com/example/runner/├── MainAbilitySlice.java // 主界…...

【Java学习笔记】BigInteger 和 BigDecimal 类

BigInteger 和 BigDecimal 类 二者共有的常见方法 方法功能add加subtract减multiply乘divide除 注意点&#xff1a;传参类型必须是类对象 一、BigInteger 1. 作用&#xff1a;适合保存比较大的整型数 2. 使用说明 创建BigInteger对象 传入字符串 3. 代码示例 import j…...

CSS设置元素的宽度根据其内容自动调整

width: fit-content 是 CSS 中的一个属性值&#xff0c;用于设置元素的宽度根据其内容自动调整&#xff0c;确保宽度刚好容纳内容而不会超出。 效果对比 默认情况&#xff08;width: auto&#xff09;&#xff1a; 块级元素&#xff08;如 <div>&#xff09;会占满父容器…...

代码随想录刷题day30

1、零钱兑换II 给你一个整数数组 coins 表示不同面额的硬币&#xff0c;另给一个整数 amount 表示总金额。 请你计算并返回可以凑成总金额的硬币组合数。如果任何硬币组合都无法凑出总金额&#xff0c;返回 0 。 假设每一种面额的硬币有无限个。 题目数据保证结果符合 32 位带…...

【Android】Android 开发 ADB 常用指令

查看当前连接的设备 adb devices 连接设备 adb connect 设备IP 断开已连接的设备 adb disconnect 设备IP 安装应用 adb install 安装包的路径 卸载应用 adb uninstall 应用包名 查看已安装的应用包名 adb shell pm list packages 查看已安装的第三方应用包名 adb shell pm list…...