时间序列分析实战(四):Holt-Winters建模及预测

2024-02-27 23:12

本文主要是介绍时间序列分析实战(四):Holt-Winters建模及预测,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

🍉CSDN小墨&晓末:https://blog.csdn.net/jd1813346972

   个人介绍: 研一|统计学|干货分享
         擅长Python、Matlab、R等主流编程软件
         累计十余项国家级比赛奖项,参与研究经费10w、40w级横向

文章目录

  • 1 目的
  • 2 Holt-Winters三参数指数平滑乘法模型
  • 3 Holt-Winters三参数指数平滑乘法模型预测

1 目的

  该篇文章主要展示针对时序进行Holt-Winters建模,案例数据同 时间序列分析实战(三):时序因素分解法:某欧洲小镇1963年1月至1976年12月每月旅馆入住的房间数构成时间序列 x t x_t xt

2 Holt-Winters三参数指数平滑乘法模型

  通过上一篇 Blog 知道该时序数据具有季节效应,并且具有长期趋势,考虑首先建立Holt-Winters三参数指数平滑乘法模型:

x t = [ a ( t ) + b ( t ) ] c ( t ) x_t=[a(t)+b(t)]c(t) xt=[a(t)+b(t)]c(t)

  运行程序:

fit1=HoltWinters(data1,seasonal = "mult")
fit1

  运行结果:

## Holt-Winters exponential smoothing with trend and multiplicative seasonal component.
## 
## Call:
## HoltWinters(x = data1, seasonal = "mult")
## 
## Smoothing parameters:
##  alpha: 0.01567674
##  beta : 0.008068444
##  gamma: 0.4392594
## 
## Coefficients:
##            [,1]
## a   875.5123349
## b     1.9568538
## s1    0.9301067
## s2    0.8613974
## s3    0.8741871
## s4    0.9798006
## s5    0.9624445
## s6    1.0964284
## s7    1.2846348
## s8    1.3110818
## s9    1.0004965
## s10   0.9987417
## s11   0.8628932
## s12   0.9793806

  基于R最优拟合原则得到平滑系数 α \alpha α=0.01567674, β \beta β=0.008068444, γ \gamma γ=0.4392594。经迭代得到三个参数的最后迭代值: a ( t ) a(t) a(t)=875.5123349, b ( t ) b(t) b(t)=1.9568538,参数 c ( t ) c(t) c(t)的最后12个月估计值对应的是12个月的季节指数,见表1。

  该序列向前任意 k k k期的预测值为:

x ^ t + k = ( 875.512 + 1.967 k ) S j , ∀ k ≥ 1 \hat x_{t+k}=(875.512+1.967k)S_j,\forall k≥1 x^t+k=(875.512+1.967k)Sj,k1

  式中, j j j t + k t+k t+k期对应的季节。

3 Holt-Winters三参数指数平滑乘法模型预测

  运行程序:

library(forecast)
fore1=forecast::forecast(fit1,h=36)
fore1$mean

  运行结果:

##            Jan       Feb       Mar       Apr       May       Jun       Jul
## 1977  816.1400  757.5353  770.4935  865.4968  852.0489  972.8099 1142.3105
## 1978  837.9810  777.7629  791.0214  888.5047  874.6492  998.5565 1172.4766
## 1979  859.8220  797.9904  811.5493  911.5126  897.2496 1024.3031 1202.6427
##            Aug       Sep       Oct       Nov       Dec
## 1977 1168.3931  893.5675  893.9546  774.0477  880.4578
## 1978 1199.1802  917.0614  917.4073  794.3104  903.4559
## 1979 1229.9674  940.5553  940.8600  814.5731  926.4540

 运行程序:

plot(fore1,lty=2,sub='图1 入住房间数序列Holt-Winters三参数指数平滑预测效果图')
lines(fore1$fitted,col=4)

   运行结果:

图1 Holt-Winters三参数指数平滑乘法模型预测效果

这篇关于时间序列分析实战(四):Holt-Winters建模及预测的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/753854

相关文章

Spring的RedisTemplate的json反序列泛型丢失问题解决

《Spring的RedisTemplate的json反序列泛型丢失问题解决》本文主要介绍了SpringRedisTemplate中使用JSON序列化时泛型信息丢失的问题及其提出三种解决方案,可以根据性... 目录背景解决方案方案一方案二方案三总结背景在使用RedisTemplate操作redis时我们针对

从入门到进阶讲解Python自动化Playwright实战指南

《从入门到进阶讲解Python自动化Playwright实战指南》Playwright是针对Python语言的纯自动化工具,它可以通过单个API自动执行Chromium,Firefox和WebKit... 目录Playwright 简介核心优势安装步骤观点与案例结合Playwright 核心功能从零开始学习

SpringBoot中六种批量更新Mysql的方式效率对比分析

《SpringBoot中六种批量更新Mysql的方式效率对比分析》文章比较了MySQL大数据量批量更新的多种方法,指出REPLACEINTO和ONDUPLICATEKEY效率最高但存在数据风险,MyB... 目录效率比较测试结构数据库初始化测试数据批量修改方案第一种 for第二种 case when第三种

解决1093 - You can‘t specify target table报错问题及原因分析

《解决1093-Youcan‘tspecifytargettable报错问题及原因分析》MySQL1093错误因UPDATE/DELETE语句的FROM子句直接引用目标表或嵌套子查询导致,... 目录报js错原因分析具体原因解决办法方法一:使用临时表方法二:使用JOIN方法三:使用EXISTS示例总结报错原

Java docx4j高效处理Word文档的实战指南

《Javadocx4j高效处理Word文档的实战指南》对于需要在Java应用程序中生成、修改或处理Word文档的开发者来说,docx4j是一个强大而专业的选择,下面我们就来看看docx4j的具体使用... 目录引言一、环境准备与基础配置1.1 Maven依赖配置1.2 初始化测试类二、增强版文档操作示例2.

MySQL 多列 IN 查询之语法、性能与实战技巧(最新整理)

《MySQL多列IN查询之语法、性能与实战技巧(最新整理)》本文详解MySQL多列IN查询,对比传统OR写法,强调其简洁高效,适合批量匹配复合键,通过联合索引、分批次优化提升性能,兼容多种数据库... 目录一、基础语法:多列 IN 的两种写法1. 直接值列表2. 子查询二、对比传统 OR 的写法三、性能分析

MySQL中的LENGTH()函数用法详解与实例分析

《MySQL中的LENGTH()函数用法详解与实例分析》MySQLLENGTH()函数用于计算字符串的字节长度,区别于CHAR_LENGTH()的字符长度,适用于多字节字符集(如UTF-8)的数据验证... 目录1. LENGTH()函数的基本语法2. LENGTH()函数的返回值2.1 示例1:计算字符串

Python办公自动化实战之打造智能邮件发送工具

《Python办公自动化实战之打造智能邮件发送工具》在数字化办公场景中,邮件自动化是提升工作效率的关键技能,本文将演示如何使用Python的smtplib和email库构建一个支持图文混排,多附件,多... 目录前言一、基础配置:搭建邮件发送框架1.1 邮箱服务准备1.2 核心库导入1.3 基础发送函数二、

Android kotlin中 Channel 和 Flow 的区别和选择使用场景分析

《Androidkotlin中Channel和Flow的区别和选择使用场景分析》Kotlin协程中,Flow是冷数据流,按需触发,适合响应式数据处理;Channel是热数据流,持续发送,支持... 目录一、基本概念界定FlowChannel二、核心特性对比数据生产触发条件生产与消费的关系背压处理机制生命周期

PowerShell中15个提升运维效率关键命令实战指南

《PowerShell中15个提升运维效率关键命令实战指南》作为网络安全专业人员的必备技能,PowerShell在系统管理、日志分析、威胁检测和自动化响应方面展现出强大能力,下面我们就来看看15个提升... 目录一、PowerShell在网络安全中的战略价值二、网络安全关键场景命令实战1. 系统安全基线核查