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 computationFri, 11 May 2012 07:38:23 -0400
Cite this page as followsStatistical Computations at FreeStatistics.org, Office for Research Development and Education, URL https://freestatistics.org/blog/index.php?v=date/2012/May/11/t1336736381s719x42upxgzq8t.htm/, Retrieved Mon, 29 Apr 2024 11:02:09 +0000
Statistical Computations at FreeStatistics.org, Office for Research Development and Education, URL https://freestatistics.org/blog/index.php?pk=166407, Retrieved Mon, 29 Apr 2024 11:02:09 +0000
QR Codes:

Original text written by user:
IsPrivate?No (this computation is public)
User-defined keywords
Estimated Impact163
Family? (F = Feedback message, R = changed R code, M = changed R Module, P = changed Parameters, D = changed Data)
-     [Univariate Data Series] [] [2012-05-11 11:23:57] [74be16979710d4c4e7c6647856088456]
- RMP     [ARIMA Forecasting] [forecast model2] [2012-05-11 11:38:23] [d76b387543b13b5e3afd8ff9e5fdc89f] [Current]
Feedback Forum

Post a new message
Dataseries X:
133.105
139.066
137.645
143.836
137.175
140.47
138.662
146.738
142.133
144.151
141.176
150.444
139.494
141.234
140.273
153.8
147.401
153.157
150.366
160.347
150.227
155.468
152.358
163.189
155.438
159.07
155.232
165.366
157.161
165.623
157.775
173.696
161.44
166.145
164.361
177.168
164.15
164.869
163.064
174.409
164.062
166.523
164.027
173.251
164.983
166.886
163.6
172.94
166.603
167.785
166.85
177.504
167.63
168.123
167.705
181.996
172.861
175.444
176.473
193.009
178.455
187.177
183.767
195.74
188.674
195.03
186.305
201.588
192.843
197.391
194.408
210.311
197.148
202.714
193.651
198.97
185.515
189.982
186.276
197.11
190.522
192.175
189.153
201.316
188.959
192.146
187.763
200.365




Summary of computational transaction
Raw Inputview raw input (R code)
Raw Outputview raw output of R engine
Computing time1 seconds
R Server'Gertrude Mary Cox' @ cox.wessa.net

\begin{tabular}{lllllllll}
\hline
Summary of computational transaction \tabularnewline
Raw Input & view raw input (R code)  \tabularnewline
Raw Output & view raw output of R engine  \tabularnewline
Computing time & 1 seconds \tabularnewline
R Server & 'Gertrude Mary Cox' @ cox.wessa.net \tabularnewline
\hline
\end{tabular}
%Source: https://freestatistics.org/blog/index.php?pk=166407&T=0

[TABLE]
[ROW][C]Summary of computational transaction[/C][/ROW]
[ROW][C]Raw Input[/C][C]view raw input (R code) [/C][/ROW]
[ROW][C]Raw Output[/C][C]view raw output of R engine [/C][/ROW]
[ROW][C]Computing time[/C][C]1 seconds[/C][/ROW]
[ROW][C]R Server[/C][C]'Gertrude Mary Cox' @ cox.wessa.net[/C][/ROW]
[/TABLE]
Source: https://freestatistics.org/blog/index.php?pk=166407&T=0

Globally Unique Identifier (entire table): ba.freestatistics.org/blog/index.php?pk=166407&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 Inputview raw input (R code)
Raw Outputview raw output of R engine
Computing time1 seconds
R Server'Gertrude Mary Cox' @ cox.wessa.net







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[84])
80197.11-------
81190.522-------
82192.175-------
83189.153-------
84201.316-------
85188.959191.5696186.1991196.940.17042e-040.64892e-04
86192.146195.4816188.6308202.33240.170.9690.82790.0475
87187.763192.0957184.0318200.15950.14610.49510.76280.0125
88200.365203.7141194.5972212.83110.23580.99970.69690.6969

\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[84]) \tabularnewline
80 & 197.11 & - & - & - & - & - & - & - \tabularnewline
81 & 190.522 & - & - & - & - & - & - & - \tabularnewline
82 & 192.175 & - & - & - & - & - & - & - \tabularnewline
83 & 189.153 & - & - & - & - & - & - & - \tabularnewline
84 & 201.316 & - & - & - & - & - & - & - \tabularnewline
85 & 188.959 & 191.5696 & 186.1991 & 196.94 & 0.1704 & 2e-04 & 0.6489 & 2e-04 \tabularnewline
86 & 192.146 & 195.4816 & 188.6308 & 202.3324 & 0.17 & 0.969 & 0.8279 & 0.0475 \tabularnewline
87 & 187.763 & 192.0957 & 184.0318 & 200.1595 & 0.1461 & 0.4951 & 0.7628 & 0.0125 \tabularnewline
88 & 200.365 & 203.7141 & 194.5972 & 212.8311 & 0.2358 & 0.9997 & 0.6969 & 0.6969 \tabularnewline
\hline
\end{tabular}
%Source: https://freestatistics.org/blog/index.php?pk=166407&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[84])[/C][/ROW]
[ROW][C]80[/C][C]197.11[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][/ROW]
[ROW][C]81[/C][C]190.522[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][/ROW]
[ROW][C]82[/C][C]192.175[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][/ROW]
[ROW][C]83[/C][C]189.153[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][/ROW]
[ROW][C]84[/C][C]201.316[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][C]-[/C][/ROW]
[ROW][C]85[/C][C]188.959[/C][C]191.5696[/C][C]186.1991[/C][C]196.94[/C][C]0.1704[/C][C]2e-04[/C][C]0.6489[/C][C]2e-04[/C][/ROW]
[ROW][C]86[/C][C]192.146[/C][C]195.4816[/C][C]188.6308[/C][C]202.3324[/C][C]0.17[/C][C]0.969[/C][C]0.8279[/C][C]0.0475[/C][/ROW]
[ROW][C]87[/C][C]187.763[/C][C]192.0957[/C][C]184.0318[/C][C]200.1595[/C][C]0.1461[/C][C]0.4951[/C][C]0.7628[/C][C]0.0125[/C][/ROW]
[ROW][C]88[/C][C]200.365[/C][C]203.7141[/C][C]194.5972[/C][C]212.8311[/C][C]0.2358[/C][C]0.9997[/C][C]0.6969[/C][C]0.6969[/C][/ROW]
[/TABLE]
Source: https://freestatistics.org/blog/index.php?pk=166407&T=1

Globally Unique Identifier (entire table): ba.freestatistics.org/blog/index.php?pk=166407&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[84])
80197.11-------
81190.522-------
82192.175-------
83189.153-------
84201.316-------
85188.959191.5696186.1991196.940.17042e-040.64892e-04
86192.146195.4816188.6308202.33240.170.9690.82790.0475
87187.763192.0957184.0318200.15950.14610.49510.76280.0125
88200.365203.7141194.5972212.83110.23580.99970.69690.6969







Univariate ARIMA Extrapolation Forecast Performance
time% S.E.PEMAPESq.EMSERMSE
850.0143-0.013606.815100
860.0179-0.01710.015311.12638.97072.9951
870.0214-0.02260.017718.77212.23783.4983
880.0228-0.01640.017411.216711.98253.4616

\begin{tabular}{lllllllll}
\hline
Univariate ARIMA Extrapolation Forecast Performance \tabularnewline
time & % S.E. & PE & MAPE & Sq.E & MSE & RMSE \tabularnewline
85 & 0.0143 & -0.0136 & 0 & 6.8151 & 0 & 0 \tabularnewline
86 & 0.0179 & -0.0171 & 0.0153 & 11.1263 & 8.9707 & 2.9951 \tabularnewline
87 & 0.0214 & -0.0226 & 0.0177 & 18.772 & 12.2378 & 3.4983 \tabularnewline
88 & 0.0228 & -0.0164 & 0.0174 & 11.2167 & 11.9825 & 3.4616 \tabularnewline
\hline
\end{tabular}
%Source: https://freestatistics.org/blog/index.php?pk=166407&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]Sq.E[/C][C]MSE[/C][C]RMSE[/C][/ROW]
[ROW][C]85[/C][C]0.0143[/C][C]-0.0136[/C][C]0[/C][C]6.8151[/C][C]0[/C][C]0[/C][/ROW]
[ROW][C]86[/C][C]0.0179[/C][C]-0.0171[/C][C]0.0153[/C][C]11.1263[/C][C]8.9707[/C][C]2.9951[/C][/ROW]
[ROW][C]87[/C][C]0.0214[/C][C]-0.0226[/C][C]0.0177[/C][C]18.772[/C][C]12.2378[/C][C]3.4983[/C][/ROW]
[ROW][C]88[/C][C]0.0228[/C][C]-0.0164[/C][C]0.0174[/C][C]11.2167[/C][C]11.9825[/C][C]3.4616[/C][/ROW]
[/TABLE]
Source: https://freestatistics.org/blog/index.php?pk=166407&T=2

Globally Unique Identifier (entire table): ba.freestatistics.org/blog/index.php?pk=166407&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.PEMAPESq.EMSERMSE
850.0143-0.013606.815100
860.0179-0.01710.015311.12638.97072.9951
870.0214-0.02260.017718.77212.23783.4983
880.0228-0.01640.017411.216711.98253.4616



Parameters (Session):
par1 = 4 ; par2 = 1 ; par3 = 1 ; par4 = 1 ; par5 = 4 ; par6 = 0 ; par7 = 1 ; par8 = 0 ; par9 = 1 ; par10 = FALSE ;
Parameters (R input):
par1 = 4 ; par2 = 1 ; par3 = 1 ; par4 = 1 ; par5 = 4 ; par6 = 0 ; par7 = 1 ; par8 = 0 ; par9 = 1 ; 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
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,par1))
(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.mape <- array(0, dim=fx)
perf.mape1 <- 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)
for (i in 1:fx) {
locSD <- (ub[i] - forecast$pred[i]) / 1.96
perf.pe[i] = (x[nx+i] - forecast$pred[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.mse[1] = abs(perf.se[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.mse[i] = perf.mse[i-1] + perf.se[i]
perf.mse1[i] = perf.mse[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',7,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,'Sq.E',1,header=TRUE)
a<-table.element(a,'MSE',1,header=TRUE)
a<-table.element(a,'RMSE',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.se[i],4))
a<-table.element(a,round(perf.mse1[i],4))
a<-table.element(a,round(perf.rmse[i],4))
a<-table.row.end(a)
}
a<-table.end(a)
table.save(a,file='mytable1.tab')