Free Statistics

of Irreproducible Research!

Author's title

Author*The author of this computation has been verified*
R Software Modulerwasp_arimaforecasting.wasp
Title produced by softwareARIMA Forecasting
Date of computationMon, 19 Dec 2016 13:18:26 +0100
Cite this page as followsStatistical Computations at FreeStatistics.org, Office for Research Development and Education, URL https://freestatistics.org/blog/index.php?v=date/2016/Dec/19/t1482150070czn2pcjghscs1fr.htm/, Retrieved Fri, 01 Nov 2024 03:27:10 +0000
Statistical Computations at FreeStatistics.org, Office for Research Development and Education, URL https://freestatistics.org/blog/index.php?pk=301324, Retrieved Fri, 01 Nov 2024 03:27:10 +0000
QR Codes:

Original text written by user:
IsPrivate?No (this computation is public)
User-defined keywords
Estimated Impact103
Family? (F = Feedback message, R = changed R code, M = changed R Module, P = changed Parameters, D = changed Data)
-       [ARIMA Forecasting] [arima forecasting] [2016-12-19 12:18:26] [1e2c9196efc58119c3757b6c78ac7c5f] [Current]
Feedback Forum

Post a new message
Dataseries X:
3647
1885
4791
3178
2849
4716
3085
2799
3573
2721
3355
5667
2856
1944
4188
2949
3567
4137
3494
2489
3244
2669
2529
3377
3366
2073
4133
4213
3710
5123
3141
3084
3804
3203
2757
2243
5229
2857
3395
4882
7140
8945
6866
4205
3217
3079
2263
4187
2665
2073
3540
3686
2384
4500
1679
868
1869
3710
6904
3415
938
3359
3551
2278
3033
2280
2901
4812
4882
7896
5048
3741
4418
3471
5055
7595
8124
2333
3008
2744
2833
2428
4269
3207
5170
7767
4544
3741
2193
3432
5282
6635
4222
7317
4132
5048
4383
3761
4081
6491
5859
7139
7682
8649
6146
7137
9948
15819
8370
13222
16711
19059
8303
20781
9638
13444
6072
13442
14457
17705
16463
19194
20688
14739
12702
15760




Summary of computational transaction
Raw Input view raw input (R code)
Raw Outputview raw output of R engine
Computing time1 seconds
R ServerBig Analytics Cloud Computing Center

\begin{tabular}{lllllllll}
\hline
Summary of computational transaction \tabularnewline
Raw Input view raw input (R code)  \tabularnewline
Raw Outputview raw output of R engine  \tabularnewline
Computing time1 seconds \tabularnewline
R ServerBig Analytics Cloud Computing Center \tabularnewline
\hline
\end{tabular}
%Source: https://freestatistics.org/blog/index.php?pk=301324&T=0

[TABLE]
[ROW]
Summary of computational transaction[/C][/ROW] [ROW]Raw Input[/C] view raw input (R code) [/C][/ROW] [ROW]Raw Output[/C]view raw output of R engine [/C][/ROW] [ROW]Computing time[/C]1 seconds[/C][/ROW] [ROW]R Server[/C]Big Analytics Cloud Computing Center[/C][/ROW] [/TABLE] Source: https://freestatistics.org/blog/index.php?pk=301324&T=0

Globally Unique Identifier (entire table): ba.freestatistics.org/blog/index.php?pk=301324&T=0

As an alternative you can also use a QR Code:  

The GUIDs for individual cells are displayed in the table below:

Summary of computational transaction
Raw Input view raw input (R code)
Raw Outputview raw output of R engine
Computing time1 seconds
R ServerBig Analytics Cloud Computing Center







Univariate ARIMA Extrapolation Forecast
timeY[t]F[t]95% LB95% UBp-value(H0: Y[t] = F[t])P(F[t]>Y[t-1])P(F[t]>Y[t-s])P(F[t]>Y[126])
12219194-------
12320688-------
12414739-------
12512702-------
12615760-------
127NA17224.695210936.640923512.7494NA0.6760.14020.676
128NA11252.92943687.452818818.4061NANA0.18320.1215
129NA9226.3742538.398317914.3501NANA0.21650.0702
130NA12283.17732518.838622047.516NANA0.24260.2426
131NA13747.2316-721.328628215.7918NANANA0.3926
132NA7775.7969-9055.526624607.1203NANANA0.1762
133NA5749.1957-13183.748124682.1395NANANA0.15
134NA8805.9811-12094.427929706.3901NANANA0.2572

\begin{tabular}{lllllllll}
\hline
Univariate ARIMA Extrapolation Forecast \tabularnewline
time & Y[t] & F[t] & 95% LB & 95% UB & p-value(H0: Y[t] = F[t]) & P(F[t]>Y[t-1]) & P(F[t]>Y[t-s]) & P(F[t]>Y[126]) \tabularnewline
122 & 19194 & - & - & - & - & - & - & - \tabularnewline
123 & 20688 & - & - & - & - & - & - & - \tabularnewline
124 & 14739 & - & - & - & - & - & - & - \tabularnewline
125 & 12702 & - & - & - & - & - & - & - \tabularnewline
126 & 15760 & - & - & - & - & - & - & - \tabularnewline
127 & NA & 17224.6952 & 10936.6409 & 23512.7494 & NA & 0.676 & 0.1402 & 0.676 \tabularnewline
128 & NA & 11252.9294 & 3687.4528 & 18818.4061 & NA & NA & 0.1832 & 0.1215 \tabularnewline
129 & NA & 9226.3742 & 538.3983 & 17914.3501 & NA & NA & 0.2165 & 0.0702 \tabularnewline
130 & NA & 12283.1773 & 2518.8386 & 22047.516 & NA & NA & 0.2426 & 0.2426 \tabularnewline
131 & NA & 13747.2316 & -721.3286 & 28215.7918 & NA & NA & NA & 0.3926 \tabularnewline
132 & NA & 7775.7969 & -9055.5266 & 24607.1203 & NA & NA & NA & 0.1762 \tabularnewline
133 & NA & 5749.1957 & -13183.7481 & 24682.1395 & NA & NA & NA & 0.15 \tabularnewline
134 & NA & 8805.9811 & -12094.4279 & 29706.3901 & NA & NA & NA & 0.2572 \tabularnewline
\hline
\end{tabular}
%Source: https://freestatistics.org/blog/index.php?pk=301324&T=1

[TABLE]
[ROW][C]Univariate ARIMA Extrapolation Forecast[/C][/ROW]
[ROW][C]time[/C][C]Y[t][/C][C]F[t][/C][C]95% LB[/C][C]95% UB[/C][C]p-value(H0: Y[t] = F[t])[/C][C]P(F[t]>Y[t-1])[/C][C]P(F[t]>Y[t-s])[/C][C]P(F[t]>Y[126])[/C][/ROW]
[ROW][C]122[/C][C]19194[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][/ROW]
[ROW][C]123[/C][C]20688[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][/ROW]
[ROW][C]124[/C][C]14739[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][/ROW]
[ROW][C]125[/C][C]12702[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][/ROW]
[ROW][C]126[/C][C]15760[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][/ROW]
[ROW][C]127[/C][C]NA[/C][C]17224.6952[/C][C]10936.6409[/C][C]23512.7494[/C][C]NA[/C][C]0.676[/C][C]0.1402[/C][C]0.676[/C][/ROW]
[ROW][C]128[/C][C]NA[/C][C]11252.9294[/C][C]3687.4528[/C][C]18818.4061[/C][C]NA[/C][C]NA[/C][C]0.1832[/C][C]0.1215[/C][/ROW]
[ROW][C]129[/C][C]NA[/C][C]9226.3742[/C][C]538.3983[/C][C]17914.3501[/C][C]NA[/C][C]NA[/C][C]0.2165[/C][C]0.0702[/C][/ROW]
[ROW][C]130[/C][C]NA[/C][C]12283.1773[/C][C]2518.8386[/C][C]22047.516[/C][C]NA[/C][C]NA[/C][C]0.2426[/C][C]0.2426[/C][/ROW]
[ROW][C]131[/C][C]NA[/C][C]13747.2316[/C][C]-721.3286[/C][C]28215.7918[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]0.3926[/C][/ROW]
[ROW][C]132[/C][C]NA[/C][C]7775.7969[/C][C]-9055.5266[/C][C]24607.1203[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]0.1762[/C][/ROW]
[ROW][C]133[/C][C]NA[/C][C]5749.1957[/C][C]-13183.7481[/C][C]24682.1395[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]0.15[/C][/ROW]
[ROW][C]134[/C][C]NA[/C][C]8805.9811[/C][C]-12094.4279[/C][C]29706.3901[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]0.2572[/C][/ROW]
[/TABLE]
Source: https://freestatistics.org/blog/index.php?pk=301324&T=1

Globally Unique Identifier (entire table): ba.freestatistics.org/blog/index.php?pk=301324&T=1

As an alternative you can also use a QR Code:  

The GUIDs for individual cells are displayed in the table below:

Univariate ARIMA Extrapolation Forecast
timeY[t]F[t]95% LB95% UBp-value(H0: Y[t] = F[t])P(F[t]>Y[t-1])P(F[t]>Y[t-s])P(F[t]>Y[126])
12219194-------
12320688-------
12414739-------
12512702-------
12615760-------
127NA17224.695210936.640923512.7494NA0.6760.14020.676
128NA11252.92943687.452818818.4061NANA0.18320.1215
129NA9226.3742538.398317914.3501NANA0.21650.0702
130NA12283.17732518.838622047.516NANA0.24260.2426
131NA13747.2316-721.328628215.7918NANANA0.3926
132NA7775.7969-9055.526624607.1203NANANA0.1762
133NA5749.1957-13183.748124682.1395NANANA0.15
134NA8805.9811-12094.427929706.3901NANANA0.2572







Univariate ARIMA Extrapolation Forecast Performance
time% S.E.PEMAPEsMAPESq.EMSERMSEScaledEMASE
1270.1863NANANANA00NANA
1280.343NANANANANANANANA
1290.4804NANANANANANANANA
1300.4056NANANANANANANANA
1310.537NANANANANANANANA
1321.1044NANANANANANANANA
1331.6802NANANANANANANANA
1341.2109NANANANANANANANA

\begin{tabular}{lllllllll}
\hline
Univariate ARIMA Extrapolation Forecast Performance \tabularnewline
time & % S.E. & PE & MAPE & sMAPE & Sq.E & MSE & RMSE & ScaledE & MASE \tabularnewline
127 & 0.1863 & NA & NA & NA & NA & 0 & 0 & NA & NA \tabularnewline
128 & 0.343 & NA & NA & NA & NA & NA & NA & NA & NA \tabularnewline
129 & 0.4804 & NA & NA & NA & NA & NA & NA & NA & NA \tabularnewline
130 & 0.4056 & NA & NA & NA & NA & NA & NA & NA & NA \tabularnewline
131 & 0.537 & NA & NA & NA & NA & NA & NA & NA & NA \tabularnewline
132 & 1.1044 & NA & NA & NA & NA & NA & NA & NA & NA \tabularnewline
133 & 1.6802 & NA & NA & NA & NA & NA & NA & NA & NA \tabularnewline
134 & 1.2109 & NA & NA & NA & NA & NA & NA & NA & NA \tabularnewline
\hline
\end{tabular}
%Source: https://freestatistics.org/blog/index.php?pk=301324&T=2

[TABLE]
[ROW][C]Univariate ARIMA Extrapolation Forecast Performance[/C][/ROW]
[ROW][C]time[/C][C]% S.E.[/C][C]PE[/C][C]MAPE[/C][C]sMAPE[/C][C]Sq.E[/C][C]MSE[/C][C]RMSE[/C][C]ScaledE[/C][C]MASE[/C][/ROW]
[ROW][C]127[/C][C]0.1863[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]0[/C][C]0[/C][C]NA[/C][C]NA[/C][/ROW]
[ROW][C]128[/C][C]0.343[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][/ROW]
[ROW][C]129[/C][C]0.4804[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][/ROW]
[ROW][C]130[/C][C]0.4056[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][/ROW]
[ROW][C]131[/C][C]0.537[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][/ROW]
[ROW][C]132[/C][C]1.1044[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][/ROW]
[ROW][C]133[/C][C]1.6802[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][/ROW]
[ROW][C]134[/C][C]1.2109[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][C]NA[/C][/ROW]
[/TABLE]
Source: https://freestatistics.org/blog/index.php?pk=301324&T=2

Globally Unique Identifier (entire table): ba.freestatistics.org/blog/index.php?pk=301324&T=2

As an alternative you can also use a QR Code:  

The GUIDs for individual cells are displayed in the table below:

Univariate ARIMA Extrapolation Forecast Performance
time% S.E.PEMAPEsMAPESq.EMSERMSEScaledEMASE
1270.1863NANANANA00NANA
1280.343NANANANANANANANA
1290.4804NANANANANANANANA
1300.4056NANANANANANANANA
1310.537NANANANANANANANA
1321.1044NANANANANANANANA
1331.6802NANANANANANANANA
1341.2109NANANANANANANANA



Parameters (Session):
Parameters (R input):
par1 = 0 ; par2 = 1 ; par3 = 1 ; par4 = 1 ; par5 = 4 ; par6 = 2 ; par7 = 0 ; par8 = 0 ; par9 = 0 ; par10 = FALSE ;
R code (references can be found in the software module):
par1 <- as.numeric(par1) #cut off periods
par2 <- as.numeric(par2) #lambda
par3 <- as.numeric(par3) #degree of non-seasonal differencing
par4 <- as.numeric(par4) #degree of seasonal differencing
par5 <- as.numeric(par5) #seasonal period
par6 <- as.numeric(par6) #p
par7 <- as.numeric(par7) #q
par8 <- as.numeric(par8) #P
par9 <- as.numeric(par9) #Q
if (par10 == 'TRUE') par10 <- TRUE
if (par10 == 'FALSE') par10 <- FALSE
if (par2 == 0) x <- log(x)
if (par2 != 0) x <- x^par2
lx <- length(x)
first <- lx - 2*par1
nx <- lx - par1
nx1 <- nx + 1
fx <- lx - nx
if (fx < 1) {
fx <- par5*2
nx1 <- lx + fx - 1
first <- lx - 2*fx
}
first <- 1
if (fx < 3) fx <- round(lx/10,0)
(arima.out <- arima(x[1:nx], order=c(par6,par3,par7), seasonal=list(order=c(par8,par4,par9), period=par5), include.mean=par10, method='ML'))
(forecast <- predict(arima.out,fx))
(lb <- forecast$pred - 1.96 * forecast$se)
(ub <- forecast$pred + 1.96 * forecast$se)
if (par2 == 0) {
x <- exp(x)
forecast$pred <- exp(forecast$pred)
lb <- exp(lb)
ub <- exp(ub)
}
if (par2 != 0) {
x <- x^(1/par2)
forecast$pred <- forecast$pred^(1/par2)
lb <- lb^(1/par2)
ub <- ub^(1/par2)
}
if (par2 < 0) {
olb <- lb
lb <- ub
ub <- olb
}
(actandfor <- c(x[1:nx], forecast$pred))
(perc.se <- (ub-forecast$pred)/1.96/forecast$pred)
bitmap(file='test1.png')
opar <- par(mar=c(4,4,2,2),las=1)
ylim <- c( min(x[first:nx],lb), max(x[first:nx],ub))
plot(x,ylim=ylim,type='n',xlim=c(first,lx))
usr <- par('usr')
rect(usr[1],usr[3],nx+1,usr[4],border=NA,col='lemonchiffon')
rect(nx1,usr[3],usr[2],usr[4],border=NA,col='lavender')
abline(h= (-3:3)*2 , col ='gray', lty =3)
polygon( c(nx1:lx,lx:nx1), c(lb,rev(ub)), col = 'orange', lty=2,border=NA)
lines(nx1:lx, lb , lty=2)
lines(nx1:lx, ub , lty=2)
lines(x, lwd=2)
lines(nx1:lx, forecast$pred , lwd=2 , col ='white')
box()
par(opar)
dev.off()
prob.dec <- array(NA, dim=fx)
prob.sdec <- array(NA, dim=fx)
prob.ldec <- array(NA, dim=fx)
prob.pval <- array(NA, dim=fx)
perf.pe <- array(0, dim=fx)
perf.spe <- array(0, dim=fx)
perf.scalederr <- array(0, dim=fx)
perf.mase <- array(0, dim=fx)
perf.mase1 <- array(0, dim=fx)
perf.mape <- array(0, dim=fx)
perf.smape <- array(0, dim=fx)
perf.mape1 <- array(0, dim=fx)
perf.smape1 <- array(0,dim=fx)
perf.se <- array(0, dim=fx)
perf.mse <- array(0, dim=fx)
perf.mse1 <- array(0, dim=fx)
perf.rmse <- array(0, dim=fx)
perf.scaleddenom <- 0
for (i in 2:fx) {
perf.scaleddenom = perf.scaleddenom + abs(x[nx+i] - x[nx+i-1])
}
perf.scaleddenom = perf.scaleddenom / (fx-1)
for (i in 1:fx) {
locSD <- (ub[i] - forecast$pred[i]) / 1.96
perf.scalederr[i] = (x[nx+i] - forecast$pred[i]) / perf.scaleddenom
perf.pe[i] = (x[nx+i] - forecast$pred[i]) / x[nx+i]
perf.spe[i] = 2*(x[nx+i] - forecast$pred[i]) / (x[nx+i] + forecast$pred[i])
perf.se[i] = (x[nx+i] - forecast$pred[i])^2
prob.dec[i] = pnorm((x[nx+i-1] - forecast$pred[i]) / locSD)
prob.sdec[i] = pnorm((x[nx+i-par5] - forecast$pred[i]) / locSD)
prob.ldec[i] = pnorm((x[nx] - forecast$pred[i]) / locSD)
prob.pval[i] = pnorm(abs(x[nx+i] - forecast$pred[i]) / locSD)
}
perf.mape[1] = abs(perf.pe[1])
perf.smape[1] = abs(perf.spe[1])
perf.mape1[1] = perf.mape[1]
perf.smape1[1] = perf.smape[1]
perf.mse[1] = perf.se[1]
perf.mase[1] = abs(perf.scalederr[1])
perf.mase1[1] = perf.mase[1]
for (i in 2:fx) {
perf.mape[i] = perf.mape[i-1] + abs(perf.pe[i])
perf.mape1[i] = perf.mape[i] / i
perf.smape[i] = perf.smape[i-1] + abs(perf.spe[i])
perf.smape1[i] = perf.smape[i] / i
perf.mse[i] = perf.mse[i-1] + perf.se[i]
perf.mse1[i] = perf.mse[i] / i
perf.mase[i] = perf.mase[i-1] + abs(perf.scalederr[i])
perf.mase1[i] = perf.mase[i] / i
}
perf.rmse = sqrt(perf.mse1)
bitmap(file='test2.png')
plot(forecast$pred, pch=19, type='b',main='ARIMA Extrapolation Forecast', ylab='Forecast and 95% CI', xlab='time',ylim=c(min(lb),max(ub)))
dum <- forecast$pred
dum[1:par1] <- x[(nx+1):lx]
lines(dum, lty=1)
lines(ub,lty=3)
lines(lb,lty=3)
dev.off()
load(file='createtable')
a<-table.start()
a<-table.row.start(a)
a<-table.element(a,'Univariate ARIMA Extrapolation Forecast',9,TRUE)
a<-table.row.end(a)
a<-table.row.start(a)
a<-table.element(a,'time',1,header=TRUE)
a<-table.element(a,'Y[t]',1,header=TRUE)
a<-table.element(a,'F[t]',1,header=TRUE)
a<-table.element(a,'95% LB',1,header=TRUE)
a<-table.element(a,'95% UB',1,header=TRUE)
a<-table.element(a,'p-value
(H0: Y[t] = F[t])',1,header=TRUE)
a<-table.element(a,'P(F[t]>Y[t-1])',1,header=TRUE)
a<-table.element(a,'P(F[t]>Y[t-s])',1,header=TRUE)
mylab <- paste('P(F[t]>Y[',nx,sep='')
mylab <- paste(mylab,'])',sep='')
a<-table.element(a,mylab,1,header=TRUE)
a<-table.row.end(a)
for (i in (nx-par5):nx) {
a<-table.row.start(a)
a<-table.element(a,i,header=TRUE)
a<-table.element(a,x[i])
a<-table.element(a,'-')
a<-table.element(a,'-')
a<-table.element(a,'-')
a<-table.element(a,'-')
a<-table.element(a,'-')
a<-table.element(a,'-')
a<-table.element(a,'-')
a<-table.row.end(a)
}
for (i in 1:fx) {
a<-table.row.start(a)
a<-table.element(a,nx+i,header=TRUE)
a<-table.element(a,round(x[nx+i],4))
a<-table.element(a,round(forecast$pred[i],4))
a<-table.element(a,round(lb[i],4))
a<-table.element(a,round(ub[i],4))
a<-table.element(a,round((1-prob.pval[i]),4))
a<-table.element(a,round((1-prob.dec[i]),4))
a<-table.element(a,round((1-prob.sdec[i]),4))
a<-table.element(a,round((1-prob.ldec[i]),4))
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,'Univariate ARIMA Extrapolation Forecast Performance',10,TRUE)
a<-table.row.end(a)
a<-table.row.start(a)
a<-table.element(a,'time',1,header=TRUE)
a<-table.element(a,'% S.E.',1,header=TRUE)
a<-table.element(a,'PE',1,header=TRUE)
a<-table.element(a,'MAPE',1,header=TRUE)
a<-table.element(a,'sMAPE',1,header=TRUE)
a<-table.element(a,'Sq.E',1,header=TRUE)
a<-table.element(a,'MSE',1,header=TRUE)
a<-table.element(a,'RMSE',1,header=TRUE)
a<-table.element(a,'ScaledE',1,header=TRUE)
a<-table.element(a,'MASE',1,header=TRUE)
a<-table.row.end(a)
for (i in 1:fx) {
a<-table.row.start(a)
a<-table.element(a,nx+i,header=TRUE)
a<-table.element(a,round(perc.se[i],4))
a<-table.element(a,round(perf.pe[i],4))
a<-table.element(a,round(perf.mape1[i],4))
a<-table.element(a,round(perf.smape1[i],4))
a<-table.element(a,round(perf.se[i],4))
a<-table.element(a,round(perf.mse1[i],4))
a<-table.element(a,round(perf.rmse[i],4))
a<-table.element(a,round(perf.scalederr[i],4))
a<-table.element(a,round(perf.mase1[i],4))
a<-table.row.end(a)
}
a<-table.end(a)
table.save(a,file='mytable1.tab')