R|广义线性模型知识点归纳
本文分为两个部分: (1)广义线性模型的分类及其运用场景; (2) 相关R代码。需要说明的是,参考资料是上课课件,根据本人理解整理,如果有不对的地方,欢迎探讨!
目录
引言
1. 广义线性模型
(1)二分变量
(2)类型变量
(3)计数型变量
①泊松对数线性模型
②零膨胀计数模型
2. 相关R代码
引言
在经典线性模型中,y是连续的,同时服从正态分布。但是很多情况下y是离散的,比如y表示是否贷款(0/1变量),或者优/良/差(类型变量),或者医院病人数(计数型变量)。所以引入了广义线性模型来进行回归拟合。
1. 广义线性模型
图1
(1)二分变量
当y为0/1二分变量的时候,可以用logistic模型进行回归拟合,模型设定如下:
设 服从参数为 的二项分布,则 ,采用逻辑连接函数,即:
也可以用probit模型进行回归拟合,模型设定如下:
设 服从参数为 的二项分布,则 ,采用逻辑连接函数,即:
在得到回归结果 之后,两个模型的区别在于
logistic模型中
probit模型中
(2)类型变量
当y有多个类型,比如优/良/差的时候,可以用多项logit模型,模型设定如下:
假如对于第i个观测值,因变量 有M个取值,自变量为 ,则多项logit回归模型为
同时,
最终得到的结论是第 i 个样本为 的概率
(3)计数型变量
①泊松对数线性模型
当y服从泊松分布的时候,可以用此模型,模型设定如下:
设y服从参数为λ的泊松分布,则
采用对数连接函数,即
最终得到
为了更加方便解释y,上式可以变形为:
表示的意思是,每当 上升一个单位,就有 ,则说明y变动了
②零膨胀计数模型
当y含有非常多0,分布右偏的时候,用泊松对数线性模型可能产生偏差,可以用零膨胀计数模型,模型设定如下:
设y服从参数为λ的泊松分布,则有 ,但是可能比较大,这种分布的数据叫做 “零膨胀数据”,需要用零膨胀计数模型进行拟合,模型可以分为两个部分:
(i) 零点处:用 logistic模型或者probit模型进行拟合
假设零点的点密度为,那么此处logistic模型的设定为
或者此处的probit模型的设定为
(ii) 非零点处:用泊松分布模型进行拟合
则非零处的 ,此处的泊松对数线性模型设定为
综上,零膨胀密度为:
其中, 为零点的点密度, 为(i)中的模型设定, 为(ii)中的模型设定;
进一步地,整个模型的均值为:
2. 相关R代码
# 数据介绍:被解释变量为y,解释变量为x1,x2,x3,
# 其中x1是连续数值变量;x2是0/1变量,x3是分类变量(即取值为1,2,3)#1 读入数据
setwd("C:/...")
dat <- read.csv("file.csv", header = T)#2 数据检查 ##1) 检查一下响应变量分布情况
barplot(table(dat$y))##2) 解释变量是分类变量的时候,需要进行因子化
dat_x3 <- as.factor(dat$x3)#3 选择模型回归并查看结果##1) logistic模型
glm_logit <- glm(y~x1+x2+x3, family=binomial(link=logit), data=dat)
summary(glm_logit) #输出结果
y1<-predict(glm_logit, data.frame(x1=20,x2=1,x3=1))
p1<-exp(y1)/(1+exp(y1)) #估计x1=20,x2=1,x3=1时y=1的概率##2) probit模型
glm_probit<- glm(y~x1+x2+x3, family=binomial(link=probit), data=dat)
summary(glm_probit) #输出结果
#估计满足条件时y=1的概率y2 <- predict(glm_probit, data.frame(x1=20,x2=1,x3=1),type="response") ##3) 多项probit模型
mlog<-multinom(y~x1+x2+x3,data=dat) #建立模型
summary(mlog)
predict(mlog,data.frame(x1=20,x2=1,x3=1),type="p") #估计y=1,2,...,M的概率##4) 泊松对数线性模型
glm_ln<-glm(y~x1+x2+x3,family=poisson(link=log),data=dat)
summary(glm_ln)
exp(coef(glm_ln)) # 计算因变量为y而不是lny时变量的系数##5) 零膨胀计数模型
#[|]前是非零设定模型,后面是零值时设定的模型
glm_zero <- zeroinfl(y~x1+x2+x3|y~x1+x2+x3,data=dat)
summary(glm_zero )#备注:优化模型
#如果出现某个变量不太显著的问题,可以用逐步回归优化,假设之前回归结果为 fx1
fx1_step <- step(fx1)
如果你看到这里了,可以给个赞吗,辛苦码字2小时耶!
R|广义线性模型知识点归纳相关推荐
- R语言广义线性模型函数GLM、广义线性模型(Generalized linear models)、GLM函数的语法形式、glm模型常用函数、常用连接函数、逻辑回归、泊松回归、系数解读、过散度分析
R语言广义线性模型函数GLM.广义线性模型(Generalized linear models).GLM函数的语法形式.glm模型常用函数.常用连接函数.逻辑回归.泊松回归.系数解读.过散度分析 目录
- R语言构建xgboost模型:使用xgboost构建广义线性模型(GLM):使用gblinear算法拟合线性模型并配置L1和L2正则化
R语言构建xgboost模型:使用xgboost构建广义线性模型(GLM):使用gblinear算法拟合线性模型并配置L1和L2正则化 目录
- R语言广义线性模型Logistic回归案例代码
R语言广义线性模型Logistic回归案例代码 在实际应用中,Logistic模型主要有三大用途: 1)寻找危险因素,找到某些影响因变量的"坏因素",一般可以通过优势比发现危险因素 ...
- R语言广义线性模型Logistic回归模型列线图分析(nomogram)
R语言广义线性模型Logistic回归模型列线图分析(nomogram) 我们来看图说话: gist是一种胃肠道间质瘤,作者构建了无复发生存率的logistic回归模型. 并构建了如下的列线图或者no ...
- R语言广义线性模型Logistic回归模型C Statistics计算
R语言广义线性模型Logistic回归模型C Statistics计算 区分能力指的是回归模型区分有病/无病.有效/无效.死亡/存活等结局的预测能力.比如,现有100个人,50个确定患病,50个确定不 ...
- R语言广义线性模型泊松回归(Poisson Regression)模型
R语言广义线性模型泊松回归(Poisson Regression)模型 试想一下,你现在就站在一个人流密集的马路旁,打算收集闯红灯的人群情况(?).首先,利用秒表和计数器,一分钟过去了,有5个人闯红灯 ...
- R语言广义线性模型Logistic回归模型亚组分析及森林图绘制
R语言广义线性模型Logistic回归模型亚组分析及森林图绘制 #Logistic回归案例 6 亚组分析森林图 library(forestplot) rs_forest <- read.csv ...
- R语言对数线性模型loglm函数_用R语言进行数据分析:常规和广义线性模型
用R语言进行数据分析:常规和广义线性模型 线性模型 对于常规的多重模型(multiple model)拟合,最基本的函数是lm(). 下面是调用它的方式的一种改进版: >fitted.model ...
- logit模型应用实例_广义线性模型应用举例之beta回归及R计算
广义线性模型应用举例之beta回归及R计算 在前文"广义线性模型 "中,提到广义线性模型(GLM)可概括为服务于一组来自指数分布族的响应变量的模型框架,正态分布.指数分布.伽马分布 ...
- R语言中的广义线性模型(GLM)和广义相加模型(GAM):多元(平滑)回归分析保险资金投资组合信用风险敞口
最近我们被客户要求撰写关于信用风险敞口的研究报告,包括一些图形和统计输出. 在之前的课堂上,我们已经看到了如何可视化多元回归模型(带有两个连续的解释变量).在此,目标是使用一些协变量(例如,驾驶员的年 ...
最新文章
- 【Java学习笔记之五】java数组详解
- yum源无法安装mysql_Centos7上使用官方YUM源安装Mysql
- 批处理命令 / 延迟环境变量扩展
- 服务器主板用360优化后崩溃,为什么卸载了360以后,电脑反而更流畅了?电脑高手这样解释...
- 操作系统 第一章【操作系统引论】【MOOC答案】
- EF Core 实现读写分离的最佳方案
- 服务员就结账了的p8u8
- MySQL学习笔记_5_SQL语言的设计与编写(上)
- sql取字段前4位_SQL学习之旅(7)
- 中国地质大学网络计算机考试试题,2017年中国地质大学(武汉)计算机学院830计算机软件综合之计算机网络考研题库...
- restframe_work1
- Ubuntu下PostgreSQL数据库集群(PL/Proxy)配置方法
- html设置长宽高代码_(HTML)图像的宽高和边框设置!
- Mybatis配置注意事项
- js+css制作导航栏下划线跟随动画,App+H5点击效果
- ​网易游戏实时 HTAP 计费风控平台建设
- 手把手教你搭APM之Skywalking搭建指南(支持Java/C#/Node.js)
- 一个身居中国的法国程序员谈Python与PHP
- windows 2003 R2+IIS ssl证书认证
- 数字电视电子节目指南(EPG)的实现原理分析
热门文章
- 多曝光HDR成像 跑出来的图片颜色变绿
- windows server2008r2 管理员身份
- IDEA生成SerialVersionUID
- vs2015编译vtk
- 0基础参加数学建模,最大程度冲击奖项
- 在SQL 2014 Server上安装Northwind和Pubs示例数据库
- 算法基础 计算机数学课件,第4章计算机制图数学基础_中国地质大学:数字测图_ppt_大学课件预览_高等教育资讯网...
- 北京思科CCNP和思科 CCIE考试常见问题GRE虚拟专用网络详解
- ros(28):ros基础知识学习:roscore、ros master、ros::init()、roslaunch
- The RSpec Book笔记《四》Describing Code with RSpec用RSpec描述代码