#-----------------------------------------#
# R in Action (2nd ed): Chapter 15 #
# Time series #
# requires forecast, tseries packages #
# install.packages("forecast", "tseries") #
#-----------------------------------------# par(ask=TRUE) # Listing 15.1 - Creating a time series object in R
sales <- c(18, 33, 41, 7, 34, 35, 24, 25, 24, 21, 25, 20,
22, 31, 40, 29, 25, 21, 22, 54, 31, 25, 26, 35)
tsales <- ts(sales, start=c(2003, 1), frequency=12)
tsales
plot(tsales) start(tsales)
end(tsales)
frequency(tsales) tsales.subset <- window(tsales, start=c(2003, 5), end=c(2004, 6))
tsales.subset # Listing 15.2 - Simple moving averages
library(forecast)
opar <- par(no.readonly=TRUE)
par(mfrow=c(2,2))
ylim <- c(min(Nile), max(Nile))
plot(Nile, main="Raw time series")
plot(ma(Nile, 3), main="Simple Moving Averages (k=3)", ylim=ylim)
plot(ma(Nile, 7), main="Simple Moving Averages (k=7)", ylim=ylim)
plot(ma(Nile, 15), main="Simple Moving Averages (k=15)", ylim=ylim)
par(opar) # Listing 15.3 - Seasonal decomposition using slt()
plot(AirPassengers)
lAirPassengers <- log(AirPassengers)
plot(lAirPassengers, ylab="log(AirPassengers)")
fit <- stl(lAirPassengers, s.window="period")
plot(fit)
fit$time.series
exp(fit$time.series) par(mfrow=c(2,1))
library(forecast)
monthplot(AirPassengers, xlab="", ylab="")
seasonplot(AirPassengers, year.labels="TRUE", main="")
par(opar) # Listing 15.4 - Simple exponential smoothing
library(forecast)
fit <- HoltWinters(nhtemp, beta=FALSE, gamma=FALSE)
fit forecast(fit, 1) plot(forecast(fit, 1), xlab="Year",
ylab=expression(paste("Temperature (", degree*F,")",)),
main="New Haven Annual Mean Temperature") accuracy(fit) # Listing 15.5 - Exponential smoothing with level, slope, and seasonal components
fit <- HoltWinters(log(AirPassengers))
fit accuracy(fit) pred <- forecast(fit, 5)
pred
plot(pred, main="Forecast for Air Travel",
ylab="Log(AirPassengers)", xlab="Time")
pred$mean <- exp(pred$mean)
pred$lower <- exp(pred$lower)
pred$upper <- exp(pred$upper)
p <- cbind(pred$mean, pred$lower, pred$upper)
dimnames(p)[[2]] <- c("mean", "Lo 80", "Lo 95", "Hi 80", "Hi 95")
p # Listing 15.6 - Automatic exponential forecasting with ets()
library(forecast)
fit <- ets(JohnsonJohnson)
fit
plot(forecast(fit), main="Johnson and Johnson Forecasts",
ylab="Quarterly Earnings (Dollars)", xlab="Time") # Listing 15.7 - Transforming the time series and assessing stationarity
library(forecast)
library(tseries)
plot(Nile)
ndiffs(Nile)
dNile <- diff(Nile)
plot(dNile)
adf.test(dNile) # Listing 15.8 - Fit an ARIMA model
fit <- arima(Nile, order=c(0,1,1))
fit
accuracy(fit) # Listing 15.9 - Evaluating the model fit
qqnorm(fit$residuals)
qqline(fit$residuals)
Box.test(fit$residuals, type="Ljung-Box") # Listing 15.10 - Forecasting with an ARIMA model
forecast(fit, 3)
plot(forecast(fit, 3), xlab="Year", ylab="Annual Flow") # Listing 15.11 - Automated ARIMA forecasting
library(forecast)
fit <- auto.arima(sunspots)
fit
forecast(fit, 3)
accuracy(fit)

最新文章

  1. Atitit. 破解 &#160;拦截 绕过 网站 手机 短信 验证码 &#160;方式 v2 attilax 总结
  2. MySql SELECT INTO 记录为空的问题
  3. 安装包制作工具 SetupFactory使用1 详解
  4. Ubuntu 16.04 安装 VMware-Workstation-12
  5. Hashtable、Dictionary和List 谁效率更高
  6. 收集Magento FAQ常见问题处理办法
  7. 2016 MIPT Pre-Finals Workshop Taiwan NTU Contest
  8. [转贴]C++、C#写的WebService相互调用
  9. poj 1012 Joseph (约瑟夫问题)
  10. CodeForces 10D. LCIS 最长公共上升子序列模板题 + 打印路径
  11. Kafka 源代码分析之FileMessageSet
  12. ELK 完整部署和使用 - 每天5分钟玩转 Docker 容器技术(90)
  13. eclipse 开发web 项目,使用gradle 需要安装的插件
  14. [Hive_8] Hive 设计优化
  15. ab 压力测试
  16. VUE项目问题之:去掉url中的#/
  17. SQL Server sp_executesql介绍和使用
  18. virtualBox NAT模式,设置虚拟机可上网,宿主机可访问虚拟机的方法
  19. 10.18号java课后作业代码
  20. 有关xml中的xmlns

热门文章

  1. BSC软件交流-BS
  2. linux系统终端介绍
  3. 题解-------[ZJOI2009]对称的正方形
  4. 微信小程序裁剪图片后上传
  5. UML- 其他需求制品有哪些?
  6. Android开发学习2--Android Studio目录结构、Module目录介绍、Android创建及运行和HelloWord的扩展----极其简单的游戏界面
  7. AI大火之下智能手机行业能适应这一风口吗?
  8. 如何查看iOS系统版本在iPhone设备上的占有率
  9. 使用VMware vSphere Client管理ESXI(新建虚拟机)
  10. 二十七、rsync同步工具