R语言分时滞后模型时间序列分析在空气污染与健康领域的应用(2)
气温对健康影响的滞后性已得到公认。传统的GLM 与 GAM 模型在分析空气污染与健康效应之间的关系时,只考虑到当天气温的影响,没有考虑其他滞后时间气温的混杂作用.
上一章我们使用广义线性模型( generalized linear models,GLM)与广义相加模型(generalized additive model,GAM)对空气污染与死亡率进行了分析,今天我们继续使用分时滞后模型时间序列分析对空气污染与死亡率进行了分析。
我们使用美国芝加哥1987年至 2000年大气污染与死亡数据(公众号回复:芝加哥2,可以获得数据)做实例分析,我们先导入需要的R包和数据看看
library(dlnm)
library(splines)
library(tsModel)
bc<-read.csv("E:/r/test/chicago.csv",sep=',',header=TRUE)
我们先来看看数据的构成,death:死亡人数 (per day),pm10:大气污染物pm10的中位数值,pm25median,o3median:二氧化硫的中位数值,time:天数,这里就是我们的时间,tmpd:华氏温度,date:日期
我们先对数据进行转换
bc$pm10lag01<-runMean(bc$pm10,0:1)###产生 pm10lag01变量,赋值为过去两天大气PM10浓度的移动均值
然后,我们先来运行crossbasis() 来构建交叉基矩阵,lag 设置变量的最长滞后时间,argvar = list( )、arglag = list( )分别为针对变量及其滞后时间的参数设置,fun 表示调用的函数,常用的函数包括 ns(自然立方样条函数)、bs(B 样条函数)、thr(阈值函数)等;cen设置参考值。此处假定气温的最长滞后时间 lag 为 15天,参考值取 21℃,且气温在每个滞后时间的效应一致。
cb1.temp <- crossbasis(bc$temp,lag=15,argvar=list(fun = "ns",df =3,cen =21),arglag=list(fun="strata"))
查看矩阵信息
summary(cb1.temp )
建立模型
model1<-glm(death ~ pm10lag01+ cb1.temp + ns(time, 7*14) + dow,family=quasipoisson(), bc)
解析模型
summary(model1)
pm10lag01的P值小于0.05,有统计学意义,提取系数和死亡的超额危险度 ER计算和上一章一样,我这里就简单代码过度了,我们这里要注意一下,你要根据自己数据的位置设置提取数据的矩阵
b<-summary(model1)$coeff[2,1]#提取系数
se<-summary(model1)$coeff[2,2]#提取标准误
ER<-(exp(b*10)-1)*100 ####计算 PM 10每升高 10μg /m 3 ,死亡的超额危险度ER
ERlp<-(exp((b-1.96*se)* 10)-1)*100 #计算95%CI
ERup<-(exp((b+1.96*se)* 10)-1)*100 #计算95%CI
可以看出,虽然是不同的模型,但是计算出来的结果和广义可加模型计算出来的还是很相似的。
生成预测值
pred1.pm <- crosspred(cb1.temp, model1, at=0:20, bylag=0.2, cumul=TRUE)
绘图
plot(pred1.pm, xlab="temp", main="3D: default perspective")
参考文献
mgcv包解释文件
tsModel包解释文件
杨敏娟, 潘小川. 北京市大气污染与居民心脑血管疾病死亡的时间序列分析[J]. 环境与健康杂志, 2008(4):4.
邓建明, 秦伯强, 王博雯. 广义可加模型在R中的快捷实现及蓝藻水华预测分析中的应用[J]. 生态学杂志, 2015, 34(3):8.
向伟. 广义可加模型在出生缺陷影响因素分析中的应用及R语言实现过程[J]. 中国妇幼保健, 2014, 29(29):5.
张云权, 朱耀辉, 李存禄,等. 广义相加模型在R软件中的实现[J]. 中国卫生统计, 2015, 32(6):3.
殷文军, 彭晓武, 宋世震,等. 广州市空气污染与城区居民心脑血管疾病死亡的时间序列分析[J]. 环境与健康杂志, 2012, 29(6):6.
路凤, 李亚伟, 李成橙,等. 时间序列分析在空气污染与健康领域的应用及其R软件实现[J]. 中国卫生统计, 2018, 35(4):4.
R语言分时滞后模型时间序列分析在空气污染与健康领域的应用(2)相关推荐
- R语言mgcv包时间序列分析在空气污染与健康领域的应用(3)---模型自由度选择
广 义 相 加 模 型 ( generalized additional model,GAM)是对传统广义线性模型的非参数拓展,可有效处理解释变量与效应变量间复杂的非线性关系.GAM 目前已广泛应用于 ...
- R语言mgcv包时间序列分析在空气污染与健康领域的应用(1)
在空气污染与健康研究领域,经常需要用时间序列方法将随时间变化的污染物暴露资料和随时间变化的事件发生数资料联系起来,分析人群健康结局与暴露水平之间的关系. 时间序列分析是根据系统观测得到的时间序列数据, ...
- R语言ARIMA集成模型预测时间序列分析
全文链接:http://tecdat.cn/?p=18493 本文我们使用4个时间序列模型对每周的温度序列建模.第一个是通过auto.arima获得的,然后两个是SARIMA模型,最后一个是Buys- ...
- R语言拟合ARIMA模型并使用拟合模型进行预测推理:使用forecast函数计算ARIMA模型未来值(包含时间点、预测值、两个置信区间)
R语言拟合ARIMA模型并使用拟合模型进行预测推理:使用forecast函数计算ARIMA模型未来值(包含时间点.预测值.两个置信区间) 目录
- R语言GARCH族模型:正态分布、t、GED分布EGARCH、TGARCH的VaR分析股票指数
全文链接:http://tecdat.cn/?p=31023 如何构建合适的模型以恰当的方法对风险进行测量是当前金融研究领域的一个热门话题(点击文末"阅读原文"获取完整代码数据). ...
- R语言用Garch模型和回归模型对股票价格分析
原文链接:http://tecdat.cn/?p=18310 为了找出影响价格波动的主要因素,我们使用逐步回归法来剔除一些对于应变量即价格影响很小的自变量剔除出我们的模型(点击文末"阅读原文 ...
- R语言用GARCH模型波动率建模和预测、回测风险价值 (VaR)分析股市收益率时间序列...
原文链接:http://tecdat.cn/?p=26897 风险价值 (VaR) 是金融风险管理中使用最广泛的市场风险度量,也被投资组合经理等从业者用来解释未来市场风险(点击文末"阅读原文 ...
- R语言用灰色模型 GM (1,1)、神经网络预测房价数据和可视化
全文链接:http://tecdat.cn/?p=31938 以苏州商品房房价为研究对象,帮助客户建立了灰色预测模型 GM (1,1). BP神经网络房价预测模型,利用R语言分别实现了 GM (1,1 ...
- r语言解释回归模型的假设_模型假设-解释
r语言解释回归模型的假设 Ever heard of model assumptions? What are they? And why are they important? A model is ...
最新文章
- 常用的Percona-Toolkit工具
- Andriod anim translate中的属性介绍
- 进程隐藏工具hidetoolz源码_linux最好用的资源监控工具-glances
- Android开发之旅:应用程序基础及组件
- 抗疫进展:多家科研机构联合筛选出五种可能有效的抗病毒药物
- Python错误,pip安装包或更新时因超时而报错误
- EMI (电磁干扰)
- 走进爆发中的AIOps
- mysql日期为00_MySQL 8.0.13设置日期为0000-00-00 00:00:00时出现的问题解决
- To iterate is human, to recurse, divine. — L. Peter Deutsch
- 华泰证券python算法工程师_华泰证券高薪诚聘 技术大牛/运维平台架构师
- 微信个性化菜单 java_java_java微信开发API第四步 微信自定义个性化菜单实现,微信如何实现自定义个性化菜 - phpStudy...
- Underexposed Photo Enhancement using Deep Illumination Estimation阅读札记
- 产品经理与工程师的换位思考
- 如何写出好文案,不妨看看这篇(上)
- html打印指定区域
- css溢出影藏然后显示三个小点
- 算法题_位运算_9_出现一次的数字和出现k次的数字
- matlab中sinc()函数的绘制及解析
- java道路上需要坚挺