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

R语言进行无序多分类Logistic回归

在临床研究中,接触最多的是二分类数据,如淋巴癌是否转移,是否死亡,这些因变量最后都可以转换成二分类0与1的问题。然后建立二元logistic回归方程,可以得到影响因素的OR值。但有时我们也会接触到多分类结局数据,今天咱们来演示一下怎么使用R语言进行多分类结局逻辑回归分析。

在这里插入图片描述
咱们先导入数据和R包

library(here)
library(tidyverse)
library(haven)
library(gtsummary)
library(VGAM)
library(kableExtra)
library(HSAUR)
library(reshape2)
setwd("E:/公众号文章2024年/R无序多分类Logistic回归")
load("hsbdemo.rda")
ms<-hsbdemo

在这里插入图片描述
这个数据是高中生毕业后的一个就业计划数据,Prog是结局变量,是个三分类变量,预测变量是ses社会经济地位,其他的是一些协变量。

变量比较多,咱们选出需要的变量,并且把字符变量转成因子

ms <- ms %>% select(ses, prog, female , write ) %>% mutate(across(where(is.labelled), as_factor)) 

在这里插入图片描述
咱们以prog为分类变量,绘制个基线表,了解相关数据分布

ms %>%tbl_summary(by = prog,statistic = list(all_continuous() ~ "{mean} ({sd})", all_categorical() ~ "{n} ({p}%)"),type = list(where(is.logical) ~ "categorical")) %>% modify_caption("**Table 1. Survey Participant Characteristic**")  %>%modify_header(label ~ "**Variable**") %>%modify_spanning_header(c("stat_1", "stat_2", "stat_3") ~ "**Baseline tables for three types of projects**") %>%modify_footnote(all_stat_cols() ~ "Mean (SD) or Frequency (%)") %>%bold_labels() %>%as_gt()

在这里插入图片描述
我们以academic为参考,建立新的变量

ms <- ms %>% mutate(prog2 = fct_relevel(prog, c("academic", 'general', 'vocation')))
levels(ms$prog2)

在这里插入图片描述
更改了参考类别后,咱们使用prog2为结局变量建立无序多分类逻辑回归模型,很多包可以建立这个模型,我这里用vglm包来建,我觉得比较简单点

fit <- vglm(prog2~ ses + write, multinomial, data = ms)
summary(fit)

在这里插入图片描述
这样结果就出来啦,seslow:1和seslow:2的这两个系数是针对academic这个结局的
还可以做交互效应的,把交互效应打上去就可以啦,我这里就不弄了。

查看系数和可惜区间

b_mlog <- coef(fit )
ci_mlog <- confint(fit)
b_ci_mlog <- data.frame(b_mlog,ci_mlog) %>%rename("log odds" = b_mlog, "Lower CI" = X2.5.., "Upper CI" = X97.5..)
b_ci_mlog %>% kbl(digits = 2, booktabs = T, caption = "Log odds from multinomial logistic regression") %>%kable_styling(position = "center")

在这里插入图片描述
查看各个结局概率的数据

predict.vgam(fit, type = 'response') %>% head(20)

在这里插入图片描述
构造一个新数据

ms2 <- data.frame(ses = rep(c("low", "middle", "high"), each = 41), write = rep(c(30:70), 3))
ms2<-predict(fit, newdata = ms2,type = 'response') %>% cbind(ms2)

转化数据

ms3 <- melt(ms2, id.vars = c("ses", "write"), value.name = "probability")

在这里插入图片描述
最后绘图

ggplot(ms3, aes(x = write, y = probability, colour = ses)) + geom_line() + facet_grid(variable ~ ., scales = "free")

在这里插入图片描述
表明随着write增加,不同的经济基础转向各个计划的概率不同。

参考文献

  1. https://xianxiongma.github.io/Clinical-model/chapter2/chapter2.html
  2. https://bookdown.org/drki_musa/dataanalysis/multinomial-logistic-regression.html

相关文章:

R语言进行无序多分类Logistic回归

在临床研究中&#xff0c;接触最多的是二分类数据&#xff0c;如淋巴癌是否转移&#xff0c;是否死亡&#xff0c;这些因变量最后都可以转换成二分类0与1的问题。然后建立二元logistic回归方程&#xff0c;可以得到影响因素的OR值。但有时我们也会接触到多分类结局数据&#xf…...

Maven从入门到精通(三)

一、Settings 配置 settings.xml 用来配置 maven 项目中的各种参数文件&#xff0c;包括本地仓库、远程仓库、私服、认证等信息。 全局 settings、用户 setting、pom 的区别&#xff1a; 全局 settings.xml 是 maven 的全局配置文件&#xff0c;一般位于 ${maven.home}/conf…...

Red Hat 和 Debian Linux 对比

原图的作者(https://bbs.deepin.org/post/209759) Red Hat Enterprise Linux https://www.redhat.com/ CentOS Linux https://www.centos.org/ Fedora Linux https://fedoraproject.org/ Debian https://www.debian.org/ Ubuntu https://cn.ubuntu.com/ https://ubuntu.c…...

Axure设计之全屏与退出全屏交互实现

在Axure RP中&#xff0c;设计全屏与退出全屏的交互功能可以极大地提升用户体验&#xff0c;尤其是在展示产品原型或进行演示时。本文将详细介绍如何在Axure RP中通过结合JavaScript代码实现全屏与退出全屏的交互效果。 ​ Axure原型设计web端交互元件库&#xff1a;https://…...

如何测试出自己电脑的网络速度(网速)?

首先电脑上要下载一个这样的一个电脑软件&#xff1a;360安全卫士 1、打开软件之后&#xff0c;选择【网络安全】 2、选择【宽带测速器】 3、点击之后&#xff0c;即可开始检测当前网络速度&#xff0c;等待大概十几秒后会出现结果,如下&#xff1a; 位置①&#xff1a;显示…...

如何利用AI进行有效的科技产品发布

如果你们公司即将推出一款具有颠覆性的软件&#xff0c;你大概已经了解了科技在现代市场中的价值。 但像AI这样的技术不仅仅是有效的产品组成部分&#xff0c;它们还可以帮助将这些产品推向客户&#xff08;或安装到他们的电脑上&#xff09;。 Kuno Creative明白AI在科技营销…...

二层、三层网络基本原理

文章目录 二层网络整体拓扑相关配置配置namespace创建switch创建veth设备配置veth的IP启动veth 测试 三层网络配置vm1配置vm2配置 测试 二层网络 我们用Linux bridge模拟现实中的switch&#xff0c;用namespace模拟连接在交换机上的pc 整体拓扑 ------------------ ----…...

全面掌握 Jest:从零开始的测试指南(上篇)

随着JavaScript在前后端开发中的广泛应用&#xff0c;测试已成为保证代码质量的关键环节。 为什么需要单元测试 在我们的开发过程中&#xff0c;经常需要定义一些算法函数&#xff0c;例如将接口返回的数据转换成UI组件所需的格式。为了校验这些算法函数的健壮性&#xff0c;部…...

Go 交叉编译

Mac 下编译 Linux 和 Windows 64位可执行程序 Linux&#xff1a; CGO_ENABLED0 GOOSlinux GOARCHamd64 go build main.go Windows&#xff1a; CGO_ENABLED0 GOOSwindows GOARCHamd64 go build main.go Linux 下编译 Mac 和 Windows 64位可执行程序 Mac: CGO_ENABLED0 G…...

goctl安装失败

今天遇到一个很奇怪的问题 在阿里云的ubuntu服务器上远程安装goctl&#xff1a;go install github.com/zeromicro/go-zero/tools/goctllatest&#xff0c;后面会断开ssh连接&#xff0c;就再也连不上了&#xff0c;connecting with ssh timed out。在阿里云的workbench上连接显…...

DebateGPT:通过多智能体辩论监督微调大模型

人工智能咨询培训老师叶梓 转载标明出处 这些模型的训练通常依赖于资源密集型的人工反馈&#xff0c;这不仅成本高昂&#xff0c;而且耗时。为了解决这一问题&#xff0c;一篇名为《FINE-TUNING LARGE LANGUAGE MODELS WITH MULTI-AGENT DEBATE SUPERVISION》的论文提出了一种…...

【最新综述】基于深度学习的超声自动无损检测(下)

4.Levels of automation 5.Basic axioms for DL-based ultrasonic NDE 在回顾了最新技术和每个自动化级别的贡献之后&#xff0c;我们不难发现&#xff0c;目前的数字语言方法论在不同论文之间存在着很大的差异。例如&#xff0c;有些作者提出了同时处理不同步骤的模型[121]&…...

kali——tshark的使用

目录 前言 使用方法 tshark提取流量为文档 前言 tshark 是一个命令行的网络分析工具&#xff0c;它用于捕获和分析网络流量。它支持多种网络协议&#xff0c;包括 TCP、UDP、ICMP 等。Tshark 可以用于调试网络问题、进行安全审计、分析应用程序性能等。 在 Kali Linux 中&…...

TortoiseSVN图标不显示的解决

解决办法一:修改svn软件的图标设置 1、选中一个文件夹或在桌面空白处,右击进入svn的setting 2、进入setting->Icon Overlays,Status cache选择Default或shell,然后点击应用 3、查看文件,图标可以正常显示 解决办法二:修改注册表的文件夹顺序 问题现象: 1、svn一直…...

Oracle 11gR2打PSU补丁详细教程

1 说明 Oracle的PSU&#xff08;Patch Set Update&#xff09;补丁是Oracle公司为了其数据库产品定期发布的更新包&#xff0c;通常每季度发布一次。PSU包含了该季度内收集的一系列安全更新&#xff08;CPU&#xff1a;Critical Patch Update&#xff09;以及一些重要的错误修…...

2.4 卷积1

2.4 卷积1 2.4 卷积 在了解了系统及其脉冲响应之后&#xff0c;人们可能会想知道是否有一种方法可以通过任何给定的输入信号&#xff08;不仅仅是单位脉冲&#xff09;确定系统的输出信号。卷积就是这个问题的答案&#xff0c;前提是系统是线性且时不变的&#xff08;LTI&…...

OA项目值用户登入首页展示

1.什么是OA 办公自动化(Office Automation,简称OA)是将现代化办公和计算机技术结合起来的一种新型的办公方式。办公自动化没有统一的定义,凡是在传统的办公室中采用各种新技术、新机器、新设备从事办公业务,都属于办公自动化的领域。通过实现办公自动化,或者说实现数字化…...

如何关闭前端Chrome的debugger反调试

1、禁用浏览器断点 2. 把控制台独立一个窗口...

硬件工程师笔试面试——晶振

目录 13、晶振 13.1 基础 晶振原理图 晶振实物图 13.1.1 概念 13.1.2 工作原理 13.1.3 应用领域 13.1.4 产品类型 13.2 相关问题 13.2.1 晶振的工作原理是什么,它如何保证频率的稳定性? 13.2.2 在工业控制领域,晶振是如何确保精确度的? 13.2.3 晶振的Q值是如何…...

如何用安卓玩Java版Minecraft,安卓手机安装我的世界Java版游戏的教程

安卓手机使用FCL启动器安装我的世界Java版游戏的教程。如何用安卓玩Java版Minecraft 视频教程&#xff1a;https://www.bilibili.com/video/BV1CctYebEzR/ 前言 目前&#xff0c;安卓设备上可以用来运行Java版Minecraft的启动器主要有以下几款&#xff1a; PojavLauncher&a…...

可视化拖拽组件库终极指南:响应式设计与适配方案完整解析

可视化拖拽组件库终极指南&#xff1a;响应式设计与适配方案完整解析 【免费下载链接】visual-drag-demo 一个低代码&#xff08;可视化拖拽&#xff09;教学项目 项目地址: https://gitcode.com/gh_mirrors/vi/visual-drag-demo 可视化拖拽组件库是现代低代码开发平台的…...

PingFangSC跨平台字体解决方案:企业级部署与性能优化指南

PingFangSC跨平台字体解决方案&#xff1a;企业级部署与性能优化指南 【免费下载链接】PingFangSC PingFangSC字体包文件、苹果平方字体文件&#xff0c;包含ttf和woff2格式 项目地址: https://gitcode.com/gh_mirrors/pi/PingFangSC 在数字化转型浪潮中&#xff0c;企业…...

N_m3u8DL-RE流媒体下载器:多协议解析技术突破与下载效率提升

N_m3u8DL-RE流媒体下载器&#xff1a;多协议解析技术突破与下载效率提升 【免费下载链接】N_m3u8DL-RE 跨平台、现代且功能强大的流媒体下载器&#xff0c;支持MPD/M3U8/ISM格式。支持英语、简体中文和繁体中文。 项目地址: https://gitcode.com/GitHub_Trending/nm3/N_m3u8D…...

3步解锁B站Hi-Res音频:使用BilibiliDown开源工具轻松获取无损音乐

3步解锁B站Hi-Res音频&#xff1a;使用BilibiliDown开源工具轻松获取无损音乐 【免费下载链接】BilibiliDown (GUI-多平台支持) B站 哔哩哔哩 视频下载器。支持稍后再看、收藏夹、UP主视频批量下载|Bilibili Video Downloader &#x1f633; 项目地址: https://gitcode.com/g…...

LiuJuan Z-Image Generator真实案例:为独立音乐人生成专辑封面人像全流程

LiuJuan Z-Image Generator真实案例&#xff1a;为独立音乐人生成专辑封面人像全流程 最近&#xff0c;一位独立音乐人朋友找到我&#xff0c;说他想为自己的新专辑设计一个封面。预算有限&#xff0c;请不起专业画师&#xff0c;但又不想要那些千篇一律的模板。他想要一张能体…...

Onnxruntime模型量化实战:从PTQ到精度调优

1. Onnxruntime模型量化入门指南 第一次接触模型量化时&#xff0c;我也被各种术语搞得晕头转向。简单来说&#xff0c;量化就是把模型参数从32位浮点数转换为8位整数&#xff0c;就像把高清图片压缩成更小的文件。Onnxruntime作为业界领先的推理引擎&#xff0c;提供了完整的量…...

nli-distilroberta-base轻量化效果实测:在嵌入式设备上的推理性能与精度

nli-distilroberta-base轻量化效果实测&#xff1a;在嵌入式设备上的推理性能与精度 1. 开篇&#xff1a;当大模型遇上小设备 在树莓派上跑BERT&#xff1f;半年前这还是个笑话。但当我第一次在Jetson Nano上成功运行量化后的nli-distilroberta-base模型时&#xff0c;这个4核…...

别再手动调参了!用C#和Halcon的HSmartWindow控件,5分钟搞定ROI绘制与参数提取

工业视觉开发革命&#xff1a;用C#封装Halcon ROI的智能实践 在半导体检测、精密零件测量等工业场景中&#xff0c;区域兴趣&#xff08;ROI&#xff09;的精准定义直接影响着算法效果。传统开发模式下&#xff0c;工程师需要反复在Halcon脚本与C#界面代码间切换&#xff0c;手…...

IBM System/4 Pi:航空航天计算机的兴衰与技术传奇

【导语&#xff1a;1981 年航天飞机首飞&#xff0c;其发射和大部分飞行环节由 IBM 的 System/4 Pi 系列 AP - 101B 计算机控制。该系列于 1967 年推出&#xff0c;广泛应用于航空航天等领域&#xff0c;虽发挥重要作用&#xff0c;但相关信息却较难获取。】System/4 Pi&#x…...

智能文献处理:茉莉花插件如何实现中文文献管理的自动化革命

智能文献处理&#xff1a;茉莉花插件如何实现中文文献管理的自动化革命 【免费下载链接】jasminum A Zotero add-on to retrive CNKI meta data. 一个简单的Zotero 插件&#xff0c;用于识别中文元数据 项目地址: https://gitcode.com/gh_mirrors/ja/jasminum 在学术研究…...