Send output to:
Browser Blue - Charts White
Browser Black/White
CSV
Data:
5.1 5.4 5.8 6.7 7.6 7.8 7.8 8.2 7.7 7.5 8.3 8.9 9.31 10.4 11.3 12.2 14.19 16.31 19.21 23.6 26.4 27.09 26.81 27.9 27.39 28.4 27.1 26.6 24.91 22.79 19.4 15.3 11.49 8.61 7.4 6.6 4.3 4.4 3.4 3.2 2.7 1.11 1.1 2.5 2.91 3.1 3.7 4.3 2.2 1.8 1.6 1.3 3.6 4.4 4.7 4.9 4.5 4.8 4.4 4.5 5.5 5.3 5.3 7.1 4.7 4.8 5.2 5.8 7.5 7.9 8.2 8.8 10.3 10.8 12.2 12.6 14 15.1 16.2 16.4 15.7 15.9 16.7 18.8 21.1 23.2 22.4 21.7 21.3 22.6 24 25.8 27.3 27.7 27.5 25.5 24.1 22.4 21.3 20.7 20.3 18.9 16.7 14.5 13.2 12.1 11.2 10.1 9 9.3 9.8 9.7 8.9 8.6 8.3 8.1 7.4 7 6.9 7 5.9 5.6 4 3.2 2.8 2.8 2.7 1.9 1.8 1.5 1.1 0.4 0.3 -1 0.7 -0.3 -1 -1.3 -1.4 -1.4 -1.5 -1.1 -1.2 -1 -1.2 -1.3 -1.8 -1.3 -2.2 -2.68 -1.4 -1.7 -0.8 -0.6 -0.9 -1 -0.2 0.7 -0.2 -0.3 0.1 0.5 0.5 0.3 0 0 1.3 0.4 1.2 0 0.8 1.6 1.7 1.4 1.5 1 -0.1 0.2 -0.3 -0.3 -1 0 -0.8 -1.3 -1.1 -0.8 -0.9 -0.7 -0.7 -0.8 -0.7 -0.4 0.4 0.2 0.9 1 0.7 0.3 0.5 0.9 1.1 1.8 3 3.2 3.2 2.1 3 3.8 4.4 5 5.3 5.3 5.2 4.3 2.8 2.4 1.9 3.9 2.7 1.8 1.8 1.6 1.8 1.3 0.9 1.2 1.3 1.6 1.9 0.9 0.8 1.2 1.4 1.5 1 1.3 1.5 1.4 1.9 2.8 2.2 2.7 3.3 3 3.4 4.4 5.6 6.5 6.2 6.5 6.9 6.5 7.1 8.7 8.3 8.5 7.7 7.1 6.3 4.9 4.6 4 2.4 1.2 1 -1.6 -1.2 -1.5 -1.4 -1.7 -1.8 -1.2 -0.8 -0.5 0.6 1.9 1.5 2.7 2.4 2.8 3.1 2.9 3.3 3.5 3.6 4.4 5.1 4.6 4.9 4.9 5.4 5.3 5.5 6.4 6.5 6.2 6.1 5.5 4.2 4.1 4.5 3.2 3.6 3.4 3 2.2 1.8 2 1.9 1.7 2 2.5 2 3.2 2.1 2.4 2.1 2.7 2.7 2.6 3.1 3.2 3 2.5 2.5 2 2.4 1.8 2.5 2.3 2.3 2 1.6 1.6 1.4 1.5 0.8 1.4 1.4 1.5 1.2 1.4 1.6 2 1.6 1.3 1.5 1.6 1.8 2.3 2.3 2.3 2 1.9 1.8 1.3 1.9 2.1 2.3 2.1 2.5 0.8 0.9 1.2 1.5 1.5 1.4 1.8 1.6 1.9 1.7 1.8 1.5 2.9 2.1 1.8 1.8 1.9 2.1 2.3 2.5 2.5 2.2 1.9 1.7
Seasonal period
12
12
1
2
3
4
5
6
7
8
9
10
11
12
Type of Exponential Smoothing
(?)
Triple
Single
Double
Triple
Type of seasonality
(?)
additive
additive
multiplicative
Number of Forecasts
12
12
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Chart options
R Code
par1 <- as.numeric(par1) par4 <- as.numeric(par4) if (par2 == 'Single') K <- 1 if (par2 == 'Double') K <- 2 if (par2 == 'Triple') K <- par1 nx <- length(x) nxmK <- nx - K x <- ts(x, frequency = par1) if (par2 == 'Single') fit <- HoltWinters(x, gamma=F, beta=F) if (par2 == 'Double') fit <- HoltWinters(x, gamma=F) if (par2 == 'Triple') fit <- HoltWinters(x, seasonal=par3) fit myresid <- x - fit$fitted[,'xhat'] bitmap(file='test1.png') op <- par(mfrow=c(2,1)) plot(fit,ylab='Observed (black) / Fitted (red)',main='Interpolation Fit of Exponential Smoothing') plot(myresid,ylab='Residuals',main='Interpolation Prediction Errors') par(op) dev.off() bitmap(file='test2.png') p <- predict(fit, par4, prediction.interval=TRUE) np <- length(p[,1]) plot(fit,p,ylab='Observed (black) / Fitted (red)',main='Extrapolation Fit of Exponential Smoothing') dev.off() bitmap(file='test3.png') op <- par(mfrow = c(2,2)) acf(as.numeric(myresid),lag.max = nx/2,main='Residual ACF') spectrum(myresid,main='Residals Periodogram') cpgram(myresid,main='Residal Cumulative Periodogram') qqnorm(myresid,main='Residual Normal QQ Plot') qqline(myresid) par(op) dev.off() load(file='createtable') a<-table.start() a<-table.row.start(a) a<-table.element(a,'Estimated Parameters of Exponential Smoothing',2,TRUE) a<-table.row.end(a) a<-table.row.start(a) a<-table.element(a,'Parameter',header=TRUE) a<-table.element(a,'Value',header=TRUE) a<-table.row.end(a) a<-table.row.start(a) a<-table.element(a,'alpha',header=TRUE) a<-table.element(a,fit$alpha) a<-table.row.end(a) a<-table.row.start(a) a<-table.element(a,'beta',header=TRUE) a<-table.element(a,fit$beta) a<-table.row.end(a) a<-table.row.start(a) a<-table.element(a,'gamma',header=TRUE) a<-table.element(a,fit$gamma) a<-table.row.end(a) a<-table.end(a) table.save(a,file='mytable.tab') a<-table.start() a<-table.row.start(a) a<-table.element(a,'Interpolation Forecasts of Exponential Smoothing',4,TRUE) a<-table.row.end(a) a<-table.row.start(a) a<-table.element(a,'t',header=TRUE) a<-table.element(a,'Observed',header=TRUE) a<-table.element(a,'Fitted',header=TRUE) a<-table.element(a,'Residuals',header=TRUE) a<-table.row.end(a) for (i in 1:nxmK) { a<-table.row.start(a) a<-table.element(a,i+K,header=TRUE) a<-table.element(a,x[i+K]) a<-table.element(a,fit$fitted[i,'xhat']) a<-table.element(a,myresid[i]) a<-table.row.end(a) } a<-table.end(a) table.save(a,file='mytable1.tab') a<-table.start() a<-table.row.start(a) a<-table.element(a,'Extrapolation Forecasts of Exponential Smoothing',4,TRUE) a<-table.row.end(a) a<-table.row.start(a) a<-table.element(a,'t',header=TRUE) a<-table.element(a,'Forecast',header=TRUE) a<-table.element(a,'95% Lower Bound',header=TRUE) a<-table.element(a,'95% Upper Bound',header=TRUE) a<-table.row.end(a) for (i in 1:np) { a<-table.row.start(a) a<-table.element(a,nx+i,header=TRUE) a<-table.element(a,p[i,'fit']) a<-table.element(a,p[i,'lwr']) a<-table.element(a,p[i,'upr']) a<-table.row.end(a) } a<-table.end(a) table.save(a,file='mytable2.tab')
Compute
Summary of computational transaction
Raw Input
view raw input (R code)
Raw Output
view raw output of R engine
Computing time
0 seconds
R Server
Big Analytics Cloud Computing Center
Click here to blog (archive) this computation