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

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


摘要

本文描述了R语言中马尔克夫转换模型的分析过程。首先,对模拟数据集进行详细建模。接下来,将马尔可夫转换模型拟合到具有离散响应变量的真实数据集。用于验证对这些数据集建模的不同方法。

模拟实例

示例数据是一个模拟数据集,用于展示如何检测两种不同模式的存在:一种模式中的响应变量高度相关,另一种模式中的响应仅取决于外生变量x。自相关观测值的区间为1到100、151到180 和251到300。每种方案的真实模型为:

图1中的曲线表明,在不存在自相关的区间中,响应变量y具有与协变量x相似的行为。拟合线性模型以研究协变量x如何解释变量响应y。

> summary(mod) Call:
lm(formula = y ~ x, data = example)Residuals:Min 1Q Median 3Q Max-2.8998 -0.8429 -0.0427 0.7420 4.0337> plot(ts(example))

图1:模拟数据,y变量是响应变量

Coefficients:
Estimate Std. Error t value Pr(>|t|)(Intercept)  9.0486  0.1398  64.709  < 2e-16 ***
x   0.8235  0.2423  3.398   0.00077 ***Residual standard error: 1.208 on 298 degrees of freedom
Multiple R-squared: 0.03731, Adjusted R-squared: 0.03408
F-statistic: 11.55 on 1 and 298 DF, p-value: 0.0007701

协变量确实很重要,但是模型解释的数据行为非常糟糕。图1中的线性模型残差图表明,它们的自相关很强。残差的诊断图(图2)确认它们似乎不是白噪声,并且具有自相关关系。接下来,将自回归马尔可夫转换模型(MSM-AR)拟合到数据。自回归部分设置为1。为了指示所有参数在两个周期中都可以不同,将转换参数(sw)设置为具有四个分量的矢量。拟合线性模型时的最后一个值称为残差。

 
标准偏差。有一些选项可控制估算过程,例如用于指示是否完成了过程并行化的逻辑参数。

Markov Switching ModelAIC    BIC logLik
637.0736 693.479 -312.5368
Coefficients:
Regime 1
---------
Estimate Std. Error t value Pr(>|t|)
(Intercept)(S)  0.8417  0.3025  2.7825  0.005394 **
x(S)    -0.0533 0.1340 -0.3978  0.690778
y_1(S)  0.9208  0.0306 30.0915 < 2.2e-16 ***
---
Signif. codes:  0   '***' 0.001   '**' 0.01 '*' 0.05  '.' 0.1   ' ' 1Residual standard error: 0.5034675
Multiple R-squared: 0.8375Standardized Residuals:
Min Q1  Med Q3  Max
-1.5153666657 -0.0906543311 0.0001873641    0.1656717256    1.2020898986
Regime 2
---------   Estimate Std. Error t value Pr(>|t|)
(Intercept)(S)  8.6393  0.7244 11.9261 < 2.2e-16 ***
x(S)    1.8771  0.3107  6.0415 1.527e-09 ***
y_1(S)  -0.0569 0.0797 -0.7139  0.4753
---
Signif. codes:  0   '***' 0.001   '**' 0.01 '*' 0.05  '.' 0.1   ' ' 1Residual standard error: 0.9339683
Multiple R-squared: 0.2408
Standardized Residuals:
Min Q1 Med Q3 Max
-2.31102193 -0.03317756 0.01034139 0.04509105 2.85245598
Transition probabilities:
Regime 1 Regime 2
Regime 1 0.98499728 0.02290884
Regime 2 0.01500272 0.97709116

模型mod.mswm具有协方差x非常显着的状态,而在其他情况下,自相关变量也非常重要。两者的R平方均具有较高的值。最后,转移概率矩阵具有较高的值,这表明很难从接通状态更改为另一个状态。该模型可以完美地检测每个状态的周期。残差看起来像是白噪声,它们适合正态分布。而且,自相关消失了。

图形显示已完美检测到每个方案的周期。

> plot(mod.mswm,expl="x")

交通事故

交通数据包含2010年西班牙交通事故的每日人数,平均每日温度和每日降水量。该数据的目的是研究死亡人数与气候条件之间的关系。由于在周末和工作日变量之间存在不同的行为,因此我们说明了在这种情况下使用广义马尔科夫转换模型的情况。
在此示例中,响应变量是计数变量。因此,我们拟合了泊松广义线性模型。

> summary(model)
Call:
glm(formula = NDead ~ Temp + Prec, family = "poisson", data = traffic)

Deviance Residuals:Min   1Q  Median  3Q  Max
-3.1571 -1.0676 -0.2119 0.8080  3.0629Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) 1.1638122 0.0808726 14.391 < 2e-16 ***
Temp 0.0225513 0.0041964 5.374 7.7e-08 ***
Prec 0.0002187 0.0001113 1.964 0.0495 *
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
(Dispersion parameter for poisson family taken to be 1)
Null deviance: 597.03 on 364 degrees of freedom
Residual deviance: 567.94 on 362 degrees of freedom
AIC: 1755.9
Number of Fisher Scoring iterations: 5

下一步,使用拟合马尔可夫转换模型。为了适应广义马尔可夫转换模型,必须包含族参数,而且glm没有标准偏差参数,因此sw参数不包含其切换参数。

>
Markov Switching ModelAIC   BIC logLik
1713.878 1772.676 -850.9388
Coefficients:
Regime 1
---------
Estimate Std. Error t value Pr(>|t|)
(Intercept)(S)  0.7649  0.1755  4.3584  1.31e-05 ***
Temp(S) 0.0288  0.0082  3.5122 0.0004444 ***
Prec(S) 0.0002  0.0002  1.0000 0.3173105
---
Signif. codes:  0   '***' 0.001   '**' 0.01 '*' 0.05  '.' 0.1   ' ' 1Regime 2
---------
Estimate Std. Error t value Pr(>|t|)(Intercept)(S)   1.5659  0.1576  9.9359  < 2e-16 ***
Temp(S) 0.0194  0.0080  2.4250  0.01531 *
Prec(S) 0.0004  0.0002  2.0000  0.04550 *
---
Signif. codes:  0   '***' 0.001   '**' 0.01 '*' 0.05  '.' 0.1   ' ' 1Transition probabilities:
Regime 1 Regime 2
Regime 1 0.7287732 0.4913893
Regime 2 0.2712268 0.5086107

两种状态都有显着的协变量,但降水协变量仅在这两种状态之一中是显着的。


Aproximate intervals for the coefficients. Level= 0.95
(Intercept):
Lower Estimation Upper
Regime 1 0.4208398 0.7648733 1.108907Regime 2 1.2569375 1.5658582 1.874779
Temp:
Lower Estimation Upper
Regime 1 0.012728077 0.02884933 0.04497059
Regime 2 0.003708441 0.01939770 0.03508696
Prec:
Lower Estimation Upper
Regime 1 -1.832783e-04 0.0001846684 0.0005526152
Regime 2 -4.808567e-05 0.0004106061 0.0008692979

由于模型是通用线性模型的扩展,因此从类对象计算出图中的Pearson残差。该残差有白噪声的经典结构。残差不是自相关的,但它们与正态分布不太吻合。但是,Pearson残差的正态性不是广义线性模型验证的关键条件。

> plot(m1,which=2)

我们可以看到短时间内的状态分配,因为较大的状态基本上包含工作日。


最受欢迎的见解

1.用R语言模拟混合制排队随机服务排队系统

2.R语言中使用排队论预测等待时间

3.R语言中实现马尔可夫链蒙特卡罗MCMC模型

4.R语言中的马尔科夫机制转换(Markov regime switching)模型

5.matlab贝叶斯隐马尔可夫hmm模型

6.用R语言模拟混合制排队随机服务排队系统

7.Python基于粒子群优化的投资组合优化

8.R语言马尔可夫转换模型研究交通伤亡人数事故预测

9.用机器学习识别不断变化的股市状况——隐马尔可夫模型的应用

拓端tecdat|R语言马尔可夫转换模型研究交通伤亡人数事故预测相关推荐

  1. r语言怎么做经验分布_R语言如何做马尔科夫转换模型markov switching model

    原文链接: R语言如何做马尔科夫转换模型markov switching model​tecdat.cn 假设 有时间序列数据,如下所示.经验表明,目标变量y似乎与解释变量x有关.然而,乍一看,y的水 ...

  2. 拓端tecdat|R语言逻辑回归(Logistic回归)模型分类预测病人冠心病风险

    最近我们被客户要求撰写关于冠心病风险的研究报告,包括一些图形和统计输出. 相关视频:R语言逻辑回归(Logistic回归)模型分类预测病人冠心病风险 逻辑回归Logistic模型原理和R语言分类预测冠 ...

  3. 拓端tecdat|R语言用LOESS(局部加权回归)季节趋势分解(STL)进行时间序列异常检测

    最近我们被客户要求撰写关于LOESS(局部加权回归)的研究报告,包括一些图形和统计输出. 这篇文章描述了一种对涉及季节性和趋势成分的时间序列的中点进行建模的方法.我们将对一种叫做STL的算法进行研究, ...

  4. 拓端tecdat|R语言向量误差修正模型 (VECMs)分析长期利率和通胀率影响关系

    最近我们被客户要求撰写关于向量误差修正模型的研究报告,包括一些图形和统计输出. 向量自回归模型估计的先决条件之一是被分析的时间序列是平稳的.但是,经济理论认为,经济变量之间在水平上存在着均衡关系,可以 ...

  5. 拓端tecdat|R语言线性回归和时间序列分析北京房价影响因素可视化案例

    最近我们被客户要求撰写关于北京房价影响因素的研究报告,包括一些图形和统计输出. 目的 房价有关的数据可能反映了中国近年来的变化: 人们得到更多的资源(薪水),期望有更好的房子 人口众多 独生子女政策: ...

  6. 时序分析 43 -- 时序数据转为空间数据 (二) 马尔可夫转换场

    马尔可夫转换场(MRF,Markov Transition Fields) MRF 马尔可夫转换场(MRF, Markov Transition Fields)比GAF要简单一些,其数学模型对于从事数 ...

  7. 马尔科夫链模型状态转移矩阵

    关于马尔可夫链模型,详细请参考马尔可夫链模型 这里我使用的马尔科夫链模型的状态转移矩阵是: 股市的概率分布为[0.4, 0.3, 0.3], 即40%概率的牛市,30%概率的熊盘与30%的横盘. 代码 ...

  8. 机器学习中的马尔可夫随机场模型

    马尔可夫随机场 (Markov's Random Fields) Markov random model is a model which use an undirected graph. Undir ...

  9. 隐马尔科夫(HMM)模型

    隐马尔科夫(Hidden Markov model)模型是一类基于概率统计的模型,是一种结构最简单的动态贝叶斯网,是一种重要的有向图模型.自上世纪80年代发展起来,在时序数据建模,例如:语音识别.文字 ...

  10. PYTHON用时变马尔可夫区制转换(MRS)自回归模型分析经济时间序列

    原文链接:http://tecdat.cn/?p=22617 本文提供了一个在统计模型中使用马可夫转换模型模型的例子,来复现Kim和Nelson(1999)中提出的一些结果.它应用了Hamilton( ...

最新文章

  1. JFinal-layui v1.2.3 发布,极速开发企业应用系统
  2. IBM HACMP 系列 -- 后期安装工作和管理任务二
  3. 为无LIB的DLL制作LIB函数符号输入库zz
  4. 看完这篇文章,跟面试官扯皮就没问题了
  5. mysql将一个字符转换成多个字符_将分隔的字符串转换为mysql中的多个值
  6. 一次完整的HTTP事务是怎样一个过程
  7. webstorm 两个文件对比不同_DOS 入门到精通 使用 fc 命令比较两个文件,并逐一显示不同之处...
  8. 高斯混合模型(Gaussian Mixture Model)
  9. python利用近似公式计算π_Excel函数公式大全之利用SUMSQ函数快速计算多个数据的平方和...
  10. Spring-MVC配置Gson做为Message Converter解析Json
  11. 网上很多NV21数据直接使用BitmapFactory的代码是错误的
  12. ab plc软件_回收拆厂拆机设备废旧设备PLC触摸屏自动化设备回收【cpu吧】
  13. 【经典源码】网络安全--远程控制--Gh0st3.6饭客网络sid版
  14. 侯捷 C++11/14 笔记
  15. Conflux人物志 | Péter明哲 Marcel马驰
  16. PHP-FPM的PM配置参数说明
  17. XML(1)——shema约束之命名空间
  18. Invalid config, exiting abnormally
  19. testin云测操作步骤
  20. 数据挖掘各种算法JAVA的实现方法

热门文章

  1. Android 学习笔记之Volley(七)实现Json数据加载和解析...
  2. C#中的方法(函数),委托和事件
  3. windows DNS服务器的配置
  4. Aria2 一键安装管理脚本 与Snap安装Nextcloud 与离线下载百度云
  5. C++--第17课 - 继承与多态 - 上
  6. 在ASP.NET页面中添加确认对话框的方法
  7. NE40E面板ALM报警亮灯
  8. 用于制作app store的截图的工具:Brief Wrapper —— 最便捷的应用商店屏幕快照
  9. 又一个统计浏览器历史纪录的扩展,支持 Firefox/Chrome
  10. [改善Java代码]强制声明泛型的实际类型