R语言优雅的进行广义可加模型泊松回归分析
创始人
2024-11-17 08:07:38
0

泊松回归(Poisson regression)是以结局变量为计数结果时的一种回归分析。泊松回归在我们的生活中应用非常广泛,例如:1分钟内过马路人数,1天内火车站的旅客流动数,1天内的银行取钱人数,一周内的销售经营数据等等都可以使用泊松回归进行分析。

在这里插入图片描述
既往已经有文章《R语言进行泊松回归》初步的介绍了泊松回归,本期介绍下如何使用tidygam包来优雅的进行泊松回归,tidygam包主要是通过mgcv包来进行分析,通过对tidygam包对mgcv包的数据转换后,上手难度大大降低,可以轻松优雅的进行泊松回归分析。
咱们先导入R包和数据,数据使用的是tidygam自带的gest数据

library(tidygam) library(mgcv) library(dplyr) library(ggplot2) data("gest") theme_set(theme_light()) 

在这里插入图片描述
这个数据是一个10、11和12个月婴儿的手势数量的数据,这个数据表包含了来自孟加拉、中国和英国背景的60名婴儿所做的三种手势的计数。我解释一下变量名:dyad是ID标识的意思,background:表明来自哪个国家,months:月份,只有10,11,12共3个月,gesture手势的类型,count:手势的计数,这个是 结局变量
先生成gam模型

gs <- gam(   count ~ s(months, k = 3),   data = gest,   family = poisson ) 

这个模型gam是mgcv包生成的,解析模型,表明月数和手势计数是相关的

在这里插入图片描述
生成预测值

gs_pred <- predict_gam(gs) 

绘图,一定要用series标明绘制哪个变量

gs_pred %>%   plot(series = "months") 

在这里插入图片描述
R包介绍,这个时候生成的Y周是count的对数值,因此我们还需要转换一下

predict_gam(gs, tran_fun = exp) %>%   plot(series = "months") 

在这里插入图片描述
如果咱们想了解不同国家的分类,可以再gam函数中设定

gs_by <- gam(   count ~ s(months, by = background, k = 3),   data = gest,   family = poisson ) 

解析模型,表明不同的国家婴儿,手势计数都是和月份相关

summary(gs_by) 

在这里插入图片描述
接下来咱们可以绘制分类图形,需要再comparison处指明根据哪个变量分类

gs_by %>%   predict_gam(length_out = 20, series = "months", tran_fun = exp) %>%   plot(comparison = "background") 

在这里插入图片描述
R包指出,虽然使用plot函数绘图,但是它的本质上是一个ggplot2绘制的图片,所以咱们可以使用ggplot的方法修改它

gs_by %>%   predict_gam(length_out = 20, series = "months", tran_fun = exp) %>%   plot(comparison = "background") +   scale_color_brewer(type = "qual") + scale_fill_brewer(type = "qual") 

在这里插入图片描述
咱们如果考虑有2个非连续的变量,可以再模型里面定义

gs_by_2 <- gam(   count ~ s(months, by = background, k = 3) +     s(months, by = gesture, k = 3),   data = gest,   family = poisson ) 

解析模型,这里虽然有变量交叉,但是这种做法并不是交互效应,应该理解为亚组更加准确

summary(gs_by_2) 

在这里插入图片描述
绘图

gs_by_2 %>%   predict_gam(length_out = 20, series = "months", tran_fun = exp) %>%   plot(comparison = "gesture") +   scale_color_brewer(type = "qual") + scale_fill_brewer(type = "qual") +   facet_grid(~ background) 

在这里插入图片描述
如果咱们想了解background和gesture的交互关系,要先生成一个交互变量

gest <- gest %>%   mutate(back_gest = interaction(background, gesture)) 

然后咱们使用这个交互变量进行模型分类

gs_i <- gam(   count ~ s(months, by = back_gest, k = 3),   data = gest,   family = poisson ) summary(gs_i) 

在这里插入图片描述
绘图,

predict_gam(   gs_i, tran_fun = exp,   separate = list(back_gest = c("background", "gesture")) ) %>%   plot(series = "months", comparison = "gesture") +   facet_grid(~ background) 

在这里插入图片描述
这样一个亚组交互图形就生成好啦。

相关内容

热门资讯

windows和安卓系统的关系... 你有没有想过,为什么你的手机和电脑有时候会像好朋友一样,互相配合得天衣无缝?其实,这背后有一个大大的...
安卓11怎么降级系统,轻松还原... 你有没有发现,安卓11系统虽然功能强大,但有时候也会有点小闹心呢?比如,某些应用不支持,或者系统运行...
正版授权!游戏推荐斗牛房卡出售... 今 日消息,天蝎大厅房卡添加微信33549083 苹果今日发布了 iOS 16.1 正式版更新,简单...
推荐一款!金花房卡批发女娲大厅... 女娲大厅房卡更多详情添加微:33549083、 2、在商城页面中选择房卡选项。 3、根...
安卓系统误删无法开机,紧急修复... 手机里的照片、联系人、重要文件,说没就没了!最近,身边的朋友纷纷向我抱怨,他们的安卓手机因为误删数据...
玩家攻略,牛牛充值房卡新大圣/... 玩家攻略,牛牛充值房卡新大圣/新道游/微信链接房卡购买渠道新大圣/新道游是一款非常受欢迎的游戏,咨询...
一分钟了解!牛牛房卡出售红桃众... 红桃众娱是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:【3329006910】或QQ:332900...
IA解析/金花房卡批发玄灵大厅... IA解析/金花房卡批发玄灵大厅/微信链接房卡最低价格Sa9Ix苹果iPhone 17手机即将进入量产...
我来教你/牛牛房卡代理新518... 新518互娱房卡更多详情添加微:33549083、 2、在商城页面中选择房卡选项。 3...
正规平台有哪些,金花房卡代理零... 微信游戏中心:九天大厅房卡在哪里买打开微信,添加客服微信【88355042】,进入游戏中心或相关小程...
荣耀magic是安卓系统吗,探... 你有没有听说过荣耀Magic这款手机?最近它可是手机圈里的热门话题呢!很多人都在问,荣耀Magic是...
头条推荐!游戏推荐牛牛房卡出售... 微信游戏中心:海豚大厅房卡在哪里买打开微信,添加客服微信【88355042】,进入游戏中心或相关小程...
正版授权!斗牛房卡充值新九天大... 您好!微信新九天大厅大厅链接获取房卡可以通过以下几种方式购买: 1.微信渠道:(新九天大厅)大厅介...
头条推荐!牛牛房卡制作链接玄武... 今 日消息,玄武大厅房卡添加微信33549083 苹果今日发布了 iOS 16.1 正式版更新,简单...
科技实测!牛牛房卡官网昆仑大厅... 微信游戏中心:昆仑大厅房卡在哪里买打开微信,添加客服微信【88355042】,进入游戏中心或相关小程...
IA解析/斗牛房卡充值宝马系列... 宝马系列/随意玩房卡更多详情添加微:33549083、 2、在商城页面中选择房卡选项。 ...
正规平台有哪些,游戏推荐牛牛房... 微信游戏中心:新蜜瓜大厅/随意玩房卡在哪里买打开微信,添加客服微信【88355042】,进入游戏中心...
IA解析/金花房卡制作链接新天... 新天王/皇豪互众是一款非常受欢迎的棋牌游戏,咨询房/卡添加微信:【3329006910】或QQ:33...
推荐一款!牛牛房卡制作链接上游... 推荐一款!牛牛房卡制作链接上游联盟/正规房卡平台有哪些Sa9Ix苹果iPhone 17手机即将进入量...
我来教你/如何购买金花房卡鸿狐... 我来教你/如何购买金花房卡鸿狐大厅/房卡购买批发价格鸿狐大厅是一款非常受欢迎的游戏,咨询房/卡添加微...