spss--数据分析Log-Binonial模型

               在横断面研究中,Log-binomial 模型能够获得研究因素与结局变量的关联强度指标患病率比(PR),是一种研究二分类观察结果与多因素之间关系的重要方法,在医学研究等领域中得到了广泛的应用。

采用log-binomial 模型可直接估计PR,  log-binomial模型的因变量y服从二项分布 ,且因变量(y= 1)概率的对数与自变量呈线性关系:

 

其中,

 

β表示控制其他自变量时 , 自变量X 与Y之间的回归系数 ,PR = exp ( β)

01适用情形
 

但当事件的发生率较高(>10%)时 ,若仍用OR描述关联强度,则会高估暴露与结局的关联。因此,很多学者建议采用现患比(PR)描述暴露与结局的关联强度。

 

当存在连续型自变量时,可能导致log-binomial 模型出现不收敛的情况,这是则可采用COPY方法(数据集扩充,后面会介绍)。

02案例分析

假设有因变量Y与自变量X1,X2, X3, X4 等;因变量Y(二分类)患病率大于20%,自变量X1 为年龄age(连续型变量),其他均为分类变量;

对于此案例,最直接的方法是采用logistic回归模型,但是Y患病率大于20%,可能会高估OR值。因此,本例使用Log-binomial 模型的PR值来估计患病率与研究因素的关联强度

03 SAS 程序实例
 

PROC GENMOD 的详细使用可参照SAS help 手册。

 

 

在SAS/STAT中,通过PROC GENMOD 程序实现

数据集名为Log_binomial,参数统计量输出到Log_binomial _y中;

定义数据集OUT-para,  计算PR, LPR, UPR; 并打印

 

输出结果

 

 

但是,日志中警告 模型出现不收敛。可能的原因与很多,其中连续型自变量age可能导致模型出现不收敛;
下面采用COPY方法对数据集进行扩张。

04 SAS程序示例—COPY方法
 

当存在连续型自变量时, MLE(maximum likelihood estimation)估计的参数通常在参数所限制范围的边界上 ,MLE得不到似然函数导数为零的极大值点,导致模型不能收敛。

Deddens等学者提出先对原始数据集调整扩充后再拟合 log-binomial模型,称为COPY方法扩充原始数据集的步骤:当log-binomial 回归模型不收敛时,将原始数据集中Y=1的个案增加 c-l倍 ,然后再将原始数据集Y值互换 ,将这两个新的数据集合并成一个数据集, 即为复制(COPY )数据集 , 再利用 COPY 数据集拟合log-binomial 回归模型从而达到解决模型不收敛问题 。

通常C为常数 ,C越大(通常取1000) ,COPY数据集的伪似然估计值越接近于最大似然估计值 。在 SAS 软件中, 可以利用 genmod 模块中的加权log-binomial回归模型实现COPY 数据集下的log-binomial回归方法 。



对数据集log-binomial 进行复制,其中,c=1000;

 

再对数据进行log-binomial模型分析,应特别注意需要对 w 进行加权处理

 

结果输出

 

 

05 logistic回归模型与log-binomial模型的对比
 

从调整OR值和PR值可看出,log-binomial模型计算出的PR值要更接近与1。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/36131.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

elementUi表单恢复至初始状态并不触发表单验证

elementUi表单恢复至初始状态并不触发表单验证 1.场景再现2.解决方法 1.场景再现 左侧是树形列表,右侧是显示节点的详情,点击按钮应该就是新增一个规则的意思,表单内容是没有改变的,所以就把需要把表单恢复至初始状态并不触发表单…

大语言模型(LLM)与 Jupyter 连接起来了

现在,大语言模型(LLM)与 Jupyter 连接起来了! 这主要归功于一个名叫 Jupyter AI 的项目,它是官方支持的 Project Jupyter 子项目。目前该项目已经完全开源,其连接的模型主要来自 AI21、Anthropic、AWS、Co…

MSP432自主开发笔记6:定时器多通道捕获多条编码器线脉冲数

所用开发板:MSP432P401R 今日在此更新一下编码器测速的定时器捕获写法,之前学习时竟然忘记更新了~~ 本文讲如何用定时器的通道来 捕获编码器的脉冲信号数量,不提供速度路程的计算方式, 文章提供源码,测试工程下载&a…

积木报表集成前端加载js文件404

项目场景: 在集成积木报表和shiro时候: 集成积木报表,shrio,shrio是定义在另一个模块下的,供另一个启动类使用,积木报表集成shrio的时候,需要依赖存放shrio的核心包,该核心包除了存…

android 如何分析应用的内存(十七)——使用MAT查看Android堆

android 如何分析应用的内存(十七)——使用MAT查看Android堆 前一篇文章,介绍了使用Android profiler中的memory profiler来查看Android的堆情况。 如Android 堆中有哪些对象,这些对象的引用情况是什么样子的。 可是我们依然面临…

【ArcGIS】经纬度数据转化成平面坐标数据

将点位置导入Gis中,如下(经纬度表征位置): 如何利用Gis将其转化为平面坐标呢? Step1 坐标变换 坐标变换,打开ArcToolbox,找到“数据管理工具”->“投影和变换”->“要素”->“投影”…

MySQL—缓存

目录标题 为什么要有Buffer Poolbuffer pool有多大buffer pool缓存什么 如何管理Buffer Pool如何管理空闲页如何管理脏页如何提高缓存命中率预读失效buffer pool污染 脏页什么时候会被刷入到磁盘 为什么要有Buffer Pool 虽然说MySQL的数据是存储在磁盘中,但是也不能…

抖音关键词搜索小程序排名怎么做

抖音关键词搜索小程序排名怎么做 1 分钟教你制作一个抖音小程序。 抖音小程序就是我的视频,左下方这个蓝色的链接,点进去就是抖音小程序。 如果你有了这个小程序,发布视频的时候可以挂载这个小程序,直播的时候也可以挂载这个小…

Express 实战(一):概览

在正式学习 Express 内容之前,我们有必要从大的方面了解一下 Node.js 。 在很长的一段时间里,JavaScript 一门编写浏览器中运行脚本的语言。不过近些年,随着互联网的发展以及技术进步,JavaScript 迎来了一个集中爆发的时代。一个…

谷歌关闭跨域限制.(生成一个开发浏览器),Chrome关闭跨域

(一)、首先找到浏览器在电脑磁盘中的位置,并复制 (二)、复制一个浏览器的快捷方式到桌面(不影响正常浏览器) (三)、chrom鼠标右键属性,修改快捷方式的目标 (四)chrome.exe 后面添加 --disable-web-security --user-data-dir 复制的Chrome浏览…

JUC并发编程(JUC核心类、TimeUnit类、原子操作类、CASAQS)附带相关面试题

目录 1.JUC并发编程的核心类 2.TimeUnit(时间单元) 3.原子操作类 4.CAS 、AQS机制 1.JUC并发编程的核心类 虽然java中的多线程有效的提升了程序的效率,但是也引发了一系列可能发生的问题,比如死锁,公平性、资源管理…

【100天精通python】Day34:使用python操作数据库_ORM(SQLAlchemy)使用

目录 专栏导读 1 ORM 概述 2 SQLAlchemy 概述 3 ORM:SQLAlchemy使用 3.1 安装SQLAlchemy: 3.2 定义数据库模型类: 3.3 创建数据表: 3.4 插入数据: 3.5 查询数据: 3.6 更新数据: 3.7 删…

【Git】 git push origin master Everything up-to-date报错

hello,我是索奇,可以叫我小奇 git push 出错?显示 Everything up-to-date 那么看看你是否提交了message 下面是提交的简单流程 git add . git commit -m "message" git push origin master 大多数伙伴是没写git commit -m "…

AI自动驾驶

AI自动驾驶 一、自动驾驶的原理二、自动驾驶的分类三、自动驾驶的挑战四、自动驾驶的前景五、关键技术六、自动驾驶的安全问题七、AI数据与自动驾驶八、自动驾驶的AI算法总结 自动驾驶技术是近年来备受关注的热门话题。它代表了人工智能和机器学习在汽车行业的重要应用。本文将…

UML之四种事物

目录 结构事物 行为事物 分组事物: 注释事物 结构事物 1.类(Class) -类是对一组具有相同属性、方法、关系和语义的对象的描述。一个类实现一个或多个接口 2.接口(interface) -接口描述 了一个类或构件的一个服务的操作集。接口仅仅是定义了一组操作的规范&…

案例16 基于Spring Boot实现学生新增案例

基于Spring Boot实现学生新增。 1. 创建Spring Boot项目 创建Spring Boot项目&#xff0c;项目名称为case16-springboot-student01。 ​ 2. 设置项目信息 ​ 3. 选择依赖 选择Lombok ​ 选择Spring Web ​ 4. 设置项目名称 ​ 5. Maven依赖 <?xml version"1.0&qu…

Nature子刊 |肠道宏病毒组揭示百岁老人长寿秘诀

发表期刊&#xff1a;nature microbiology 发表时间&#xff1a;2023 影响因子&#xff1a;28.3 DOI: 10.1038/s41564-023-01370-6 研究背景 衰老是一种不可逆转的自然过程&#xff0c;随着年龄的增长&#xff0c;机体诸多方面出现功能性下降&#xff0c;与衰老相关的疾病&a…

生成式AI颠覆传统数据库的十种方式

对于生成式AI的所有闪光点&#xff0c;这个新时代最大的转变可能深埋在软件堆栈中。AI算法正在不易觉察地改变一个又一个数据库。他们正在用复杂、自适应且看似更直观的AI新功能颠覆传统数据库。 目录 1、向量和嵌入 2、查询模型 3、建议 4、索引范例 5、数据分类 6、更…

Unity 框架学习--1

由浅入深&#xff0c;慢慢演化实现框架 两个类的实现代码完全一样&#xff0c;就只有类名或类型不一样的时候&#xff0c;而且还需要不断扩展&#xff08;未来会增加各种事件&#xff09;的时候&#xff0c;这时候就用 泛型 继承 来提取&#xff0c;继承解决扩展的问题&#…

【RabbitMQ与SpringBoot集成测试收发消息】

【RabbitMQ与SpringBoot集成测试收发消息】 一、环境说明二、实验步骤三、小结 一、环境说明 安装环境&#xff1a;虚拟机VMWare Centos7.6 Maven3.6.3 JDK1.8RabbitMQ版本&#xff1a;rabbitmq-server-3.8.8-1.el7.noarch.rpm编程工具Idea 运行JDK为17 二、实验步骤 在Rab…