首页 > 其他分享 >R语言广义相加(加性)模型(GAMs)与光滑函数可视化|附代码数据

R语言广义相加(加性)模型(GAMs)与光滑函数可视化|附代码数据

时间:2023-09-28 16:24:53浏览次数:38  
标签:GAMs 加性 光滑 函数 回归 可视化 模型 mod

原文链接:http://tecdat.cn/?p=23509 

原文出处:拓端数据部落公众号

最近我们被客户要求撰写关于GAMs的研究报告,包括一些图形和统计输出。

我们在研究工作中使用广义加性模型(GAMs)。mgcv软件包是一套优秀的软件,可以为非常大的数据集指定、拟合和可视化GAMs。

这篇文章介绍一下广义加性模型(GAMs)目前可以实现的功能。

我们需要加载mgcv

   
library('mgcv')

受欢迎的例子数据集

dat中的数据在GAM相关的研究中得到了很好的研究,包含了一些协变量--标记为x0到x3--这些协变量在不同程度上与因变量有非线性关系。

我们想通过使用样条来逼近协变量和因变量之间的真实关系来尝试拟合这些关系。为了拟合一个加性模型,我们使用

   
 gam(y ~ s(x0) + s(x1) + s(x2) + s(x3), dat,  "REML")

mgcv提供了一个summary()方法,用来提取关于拟合GAM的信息。

check()函数,用于检查模型中的每个光滑函数是否使用了足够数量的基函数。你可能没有直接使用check()——会输出其他诊断结果,也会产生四个模型诊断图。

绘制光滑函数

为了将估计的GAMs可视化,mgcv提供了plot.gam()方法和vis.gam()函数,从对象中产生类似ggplot2的图。为了使GAM模型中的四个估计光滑函数可视化,我们将使用

   
plot(mod)

结果是绘制mod GAM中每一个光滑函数

使用plot函数在绘图设备上绘制多个面板,并将各个绘图排成一行。

提取光滑函数数据

用于处理mod中表示的基础光滑函数,如果你想提取用于构建该图的大部分数据,你可以使用smooth()函数。

   
smooth(mod, "x1")

诊断图

由check()产生的诊断图

   
check(mod)

结果是一个包含四个诊断图的数组,包括模型残差的Q-Q图(左上)和直方图(左下),残差与线性预测器的图(右上),以及观察值与拟合值的图。

这四张图中的每一张都是通过用户可访问的函数生成的,函数实现了一个特定的图。例如,qqplot(mod)产生上图左上方的Q-Q图。

   
qqplot(mod)

qqplot(mod)的结果是一个残差的Q-Q图,其中的参考量值是通过模拟拟合模型的数据而得到。

还可以处理目前可用的许多更专业的光滑函数。例如,二维光滑函数

   

plot(mod)

二维光滑函数的默认绘制方式是使用plot()。

和因子光滑函数交互项,相当于光滑曲线的随机斜率和截距,被画在一个面板上,颜色被用来区分不同的随机光滑函数

   

## 模拟数据
f0 <- function(x) 2 * sin(pi * x)
f1 <- function(x, a=2, b=-1) exp(a * x)+b
f2 <- function(x) 0.2 * x^11 * (10 * (1 - x))^6 + 10 * (10 * x)^3 * (1 - x)^10
f <- f0(x0) + f1(x1, a[fac], b[fac]) + f2(x2)
fac <- factor(fac)
y <- f + rnorm(n) * 2


plot(mod)

含有因子-光滑函数交互项的更复杂的GAM的结果,bs = 'fs'。

还能做什么?

可以处理mgcv可以估计的大多数光滑函数,包括带有因子和连续副变量的按变量光滑函数、随机效应光滑函数(bs = 're')、二维张量积光滑函数,以及带有参数项的模型。

参考文献

Augustin, N. H., Sauleau, E.-A., and Wood, S. N. (2012). On quantile quantile plots for generalized linear models. Computational statistics & data analysis 56, 2404–2409. doi:10.1016/j.csda.2012.01.026.


最受欢迎的见解

1.R语言多元Logistic逻辑回归 应用案例

2.面板平滑转移回归(PSTR)分析案例实现

3.matlab中的偏最小二乘回归(PLSR)和主成分回归(PCR)

4.R语言泊松Poisson回归模型分析案例

5.R语言混合效应逻辑回归Logistic模型分析肺癌

6.r语言中对LASSO回归,Ridge岭回归和Elastic Net模型实现

7.R语言逻辑回归、Naive Bayes贝叶斯、决策树、随机森林算法预测心脏病

8.python用线性回归预测股票价格

9.R语言用逻辑回归、决策树和随机森林对信贷数据集进行分类预测

标签:GAMs,加性,光滑,函数,回归,可视化,模型,mod
From: https://www.cnblogs.com/tecdat/p/17736025.html

相关文章

  • Redis可视化工具:Another Redis Desktop Manager
    Redis可视化工具:AnotherRedisDesktopManager一、介绍AnotherRedisDesktopManager(简称:RedisDesktopManager或RDM)是一个Redis数据库的可视化管理工具。它是一个跨平台的桌面应用程序,能够让用户更轻松地与Redis进行交互和管理。更快、更好、更稳定的Redis桌面(GUI)管理客户......
  • ansible-awx-ansible可视化
    1.前期准备ansible安装docker安装python3和pip3安装sudoyuminstallpython3python3-pip安装docker-compose的Python模块,有两种方式1)二进制安装[root@localhost/]#curl-L"https://github.com/docker/compose/releases/download/1.25.5/docker-compose-$(uname-......
  • Python桌面可视化+自动登录学校教务系统(含源码!!!)
    前言:通过Python爬虫与tkinter模块实现桌面快捷自动化登录教务系统效果展示:整体思路:创建主界面,在界面中手动输入用户名和密码,点击登录后自动打开浏览器,截取整个页面,裁剪出登录页面中的图片验证码并保存到本地,对验证码图片进行处理,识别出验证码。将用户名,密码,验证码一同自动输入到对......
  • 山海鲸智慧医院三维可视化系统解决方案
    随着科技的迅速发展,云计算、大数据、物联网等新兴技术的广泛应用,医疗行业如今也加入到了数字化转型的浪潮当中。在新一轮医改的推动下,智慧医院正逐渐崭露头角,成为我国医疗卫生体系现代化建设的重要方向。数字化、智能化的医疗服务正在为患者提供更便捷、高效、精准的医疗体验,同时......
  • 数据可视化工具在成绩分析中的作用与意义
    数据可视化是将数据转化为图表、图形和可交互式界面的过程,它在成绩分析中扮演着重要的角色。通过将学生成绩数据以图形化方式展示,数据可视化工具可以帮助教育者更好地理解和解释学生的表现,发现隐藏在数据背后的模式和趋势。本文将详细介绍数据可视化工具在成绩分析中的作用与意义。......
  • 视频融合平台EasyCVR如何使用视频监控系统搭建电商货物可视化追溯解决方案
    安防视频监控平台EasyCVR是一个具有强大拓展性、灵活的视频能力和轻便部署的平台。它支持多种主流标准协议,包括国标GB28181、RTSP/Onvif、RTMP等,还可以支持厂家的私有协议和SDK接入,例如海康Ehome、海大宇等设备的SDK。该平台不仅拥有传统安防视频监控的功能,还具备接入AI智能分析的......
  • 视频监控/监控汇聚平台EasyCVR助力档案库房可视化管理的应用方案
    档案作为一种特殊的留存记录,具有珍贵的历史价值和文化遗产意义。它是人类活动真实的见证,记录了辉煌时刻和普通人的生活轨迹,对社会发展和经济建设起着举足轻重的作用。如今随着市场经济的不断发展和人类文明的飞速推进,档案的价值更加凸显,档案的储存和管理也备受关注。提升档案数字......
  • 逻辑树(LogicTree)和可视化树(VisualTree)
    遍历逻辑树和可视化树FrameworkElementLevel.(FrameworkElementType).(FrameworkElementName)[DataContextType]publicstaticclassTreeHelper{publicstaticstringgetTree(FrameworkElementcontainer){StringBuildersb=newStringBuilder();......
  • 在写python数据可视化是遇到点问题,求帮助
       哪里写错了吗,还是有地方写落了,来个大佬帮我疑惑解答吧......
  • 视频融合平台EasyCVR如何使用视频监控系统搭建电商货物可视化追溯解决方案
    安防视频监控平台EasyCVR是一个具有强大拓展性、灵活的视频能力和轻便部署的平台。它支持多种主流标准协议,包括国标GB28181、RTSP/Onvif、RTMP等,还可以支持厂家的私有协议和SDK接入,例如海康Ehome、海大宇等设备的SDK。该平台不仅拥有传统安防视频监控的功能,还具备接入AI智能分析的......