经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 程序设计 » R语言 » 查看文章
基于R语言的简单时间序列分析预测
来源:cnblogs  作者:silverangel  时间:2018/12/17 9:43:53  对本文有异议
  • 数据来源: R语言自带 co2 数据集
  • 分析工具:R-3.5.0 & Rstudio-1.1.453
  • 本篇分析只是一个简单的教程,不作深究
  1. #清理环境,加载包
  2. rm(list=ls())
  3. library(forecast)
  4. library(tseries)
  5. #查看数据
  6. co2
  7. View(co2)
  • 两个视图方便查看

  1. #查看类型
  2. class(co2)

  • ts:time series,时间序列
  1. #简单查看趋势
  2. plot(co2)

  1. #波动趋势分解
  2. div=decompose(co2)
  3. plot(div)

  • 其中trend为长期趋势,seasonal为周期性趋势,random为随机变化
  1. #自相关图
  2. acf(co2)

  1. #偏相关图
  2. pacf(co2)

  1. #平稳性检验
  2. adf.test(co2)

  • 从结果上看,是个非平稳序列,并且具有很强的长期相关性,需要做差分
  1. #做一阶差分,然后做ADF检验
  2. co2_diff=diff(co2)
  3. adf.test(co2_diff)

  1. plot(co2_diff)

  1. div_diff=decompose(co2_diff)
  2. plot(div_diff)

  1. acf(co2_diff)

  1. pacf(co2_diff)

  • 序列平稳,可以做下一步分析
  1. #构建模型
  2. (mod=arima(co2_diff,order=c(1,1,1),seasonal=list(order=c(1,1,1),period=12)))

  1. #未来两年预测
  2. (mod24=forecast(mod,24))

  1. plot(mod24,col='orange')

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号