Free Statistics

of Irreproducible Research!

Author's title

Author*Unverified author*
R Software Modulerwasp_arimabackwardselection.wasp
Title produced by softwareARIMA Backward Selection
Date of computationFri, 30 Nov 2007 05:17:36 -0700
Cite this page as followsStatistical Computations at FreeStatistics.org, Office for Research Development and Education, URL https://freestatistics.org/blog/index.php?v=date/2007/Nov/30/t1196424575ep2vylwob3w9oad.htm/, Retrieved Sun, 28 Apr 2024 08:11:38 +0000
Statistical Computations at FreeStatistics.org, Office for Research Development and Education, URL https://freestatistics.org/blog/index.php?pk=7660, Retrieved Sun, 28 Apr 2024 08:11:38 +0000
QR Codes:

Original text written by user:
IsPrivate?No (this computation is public)
User-defined keywordsTaal9.2G19
Estimated Impact217
Family? (F = Feedback message, R = changed R code, M = changed R Module, P = changed Parameters, D = changed Data)
-       [ARIMA Backward Selection] [ARIMA model 2] [2007-11-30 12:17:36] [40a229849a2b804e343854d9b3fa1a24] [Current]
Feedback Forum

Post a new message
Dataseries X:
106,22
106,31
107,38
109,31
110,82
111,22
110,66
110,76
110,69
111,08
110,97
110,24
112,51
111,52
112,13
112,23
112,92
111,89
111,99
111,51
112,33
112,04
112,09
111,41
112,61
113,14
113,65
114,26
114,4
114,93
114,86
114,95
116,17
114,6
114,62
113,82
115,02
115,18
115,59
116,6
117,07
116,96
116,66
116,07
116,04
115,81
116,22
115,85
116,43
117,39
119,17
119,24
120,03
119,34
118,49
118,59
117,5
117,56
118,25
118,01




Summary of compuational transaction
Raw Inputview raw input (R code)
Raw Outputview raw output of R engine
Computing time18 seconds
R Server'Herman Ole Andreas Wold' @ 193.190.124.10:1001

\begin{tabular}{lllllllll}
\hline
Summary of compuational transaction \tabularnewline
Raw Input & view raw input (R code)  \tabularnewline
Raw Output & view raw output of R engine  \tabularnewline
Computing time & 18 seconds \tabularnewline
R Server & 'Herman Ole Andreas Wold' @ 193.190.124.10:1001 \tabularnewline
\hline
\end{tabular}
%Source: https://freestatistics.org/blog/index.php?pk=7660&T=0

[TABLE]
[ROW][C]Summary of compuational 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]18 seconds[/C][/ROW]
[ROW][C]R Server[/C][C]'Herman Ole Andreas Wold' @ 193.190.124.10:1001[/C][/ROW]
[/TABLE]
Source: https://freestatistics.org/blog/index.php?pk=7660&T=0

Globally Unique Identifier (entire table): ba.freestatistics.org/blog/index.php?pk=7660&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 compuational transaction
Raw Inputview raw input (R code)
Raw Outputview raw output of R engine
Computing time18 seconds
R Server'Herman Ole Andreas Wold' @ 193.190.124.10:1001







ARIMA Parameter Estimation and Backward Selection
Iterationar1ar2ar3ma1sar1sar2sma1
Estimates ( 1 )0.70990.2346-0.2172-0.75751.192-0.1977-0.9308
(p-val)(0.0554 )(0.1412 )(0.141 )(0.0347 )(0.0058 )(0.5189 )(0.3252 )
Estimates ( 2 )0.6770.2278-0.2214-0.7280.88830-0.6065
(p-val)(0.0633 )(0.152 )(0.1399 )(0.0401 )(5e-04 )(NA )(0.2153 )
Estimates ( 3 )0.72740.2627-0.2545-0.73940.483300
(p-val)(0.0924 )(0.0926 )(0.0983 )(0.0827 )(0.0015 )(NA )(NA )
Estimates ( 4 )-0.04760.254200.0280.492600
(p-val)(0.9113 )(0.0517 )(NA )(0.9488 )(9e-04 )(NA )(NA )
Estimates ( 5 )-0.02140.2555000.494200
(p-val)(0.8654 )(0.0474 )(NA )(NA )(7e-04 )(NA )(NA )
Estimates ( 6 )00.2566000.491400
(p-val)(NA )(0.0461 )(NA )(NA )(7e-04 )(NA )(NA )

\begin{tabular}{lllllllll}
\hline
ARIMA Parameter Estimation and Backward Selection \tabularnewline
Iteration & ar1 & ar2 & ar3 & ma1 & sar1 & sar2 & sma1 \tabularnewline
Estimates ( 1 ) & 0.7099 & 0.2346 & -0.2172 & -0.7575 & 1.192 & -0.1977 & -0.9308 \tabularnewline
(p-val) & (0.0554 ) & (0.1412 ) & (0.141 ) & (0.0347 ) & (0.0058 ) & (0.5189 ) & (0.3252 ) \tabularnewline
Estimates ( 2 ) & 0.677 & 0.2278 & -0.2214 & -0.728 & 0.8883 & 0 & -0.6065 \tabularnewline
(p-val) & (0.0633 ) & (0.152 ) & (0.1399 ) & (0.0401 ) & (5e-04 ) & (NA ) & (0.2153 ) \tabularnewline
Estimates ( 3 ) & 0.7274 & 0.2627 & -0.2545 & -0.7394 & 0.4833 & 0 & 0 \tabularnewline
(p-val) & (0.0924 ) & (0.0926 ) & (0.0983 ) & (0.0827 ) & (0.0015 ) & (NA ) & (NA ) \tabularnewline
Estimates ( 4 ) & -0.0476 & 0.2542 & 0 & 0.028 & 0.4926 & 0 & 0 \tabularnewline
(p-val) & (0.9113 ) & (0.0517 ) & (NA ) & (0.9488 ) & (9e-04 ) & (NA ) & (NA ) \tabularnewline
Estimates ( 5 ) & -0.0214 & 0.2555 & 0 & 0 & 0.4942 & 0 & 0 \tabularnewline
(p-val) & (0.8654 ) & (0.0474 ) & (NA ) & (NA ) & (7e-04 ) & (NA ) & (NA ) \tabularnewline
Estimates ( 6 ) & 0 & 0.2566 & 0 & 0 & 0.4914 & 0 & 0 \tabularnewline
(p-val) & (NA ) & (0.0461 ) & (NA ) & (NA ) & (7e-04 ) & (NA ) & (NA ) \tabularnewline
\hline
\end{tabular}
%Source: https://freestatistics.org/blog/index.php?pk=7660&T=1

[TABLE]
[ROW][C]ARIMA Parameter Estimation and Backward Selection[/C][/ROW]
[ROW][C]Iteration[/C][C]ar1[/C][C]ar2[/C][C]ar3[/C][C]ma1[/C][C]sar1[/C][C]sar2[/C][C]sma1[/C][/ROW]
[ROW][C]Estimates ( 1 )[/C][C]0.7099[/C][C]0.2346[/C][C]-0.2172[/C][C]-0.7575[/C][C]1.192[/C][C]-0.1977[/C][C]-0.9308[/C][/ROW]
[ROW][C](p-val)[/C][C](0.0554 )[/C][C](0.1412 )[/C][C](0.141 )[/C][C](0.0347 )[/C][C](0.0058 )[/C][C](0.5189 )[/C][C](0.3252 )[/C][/ROW]
[ROW][C]Estimates ( 2 )[/C][C]0.677[/C][C]0.2278[/C][C]-0.2214[/C][C]-0.728[/C][C]0.8883[/C][C]0[/C][C]-0.6065[/C][/ROW]
[ROW][C](p-val)[/C][C](0.0633 )[/C][C](0.152 )[/C][C](0.1399 )[/C][C](0.0401 )[/C][C](5e-04 )[/C][C](NA )[/C][C](0.2153 )[/C][/ROW]
[ROW][C]Estimates ( 3 )[/C][C]0.7274[/C][C]0.2627[/C][C]-0.2545[/C][C]-0.7394[/C][C]0.4833[/C][C]0[/C][C]0[/C][/ROW]
[ROW][C](p-val)[/C][C](0.0924 )[/C][C](0.0926 )[/C][C](0.0983 )[/C][C](0.0827 )[/C][C](0.0015 )[/C][C](NA )[/C][C](NA )[/C][/ROW]
[ROW][C]Estimates ( 4 )[/C][C]-0.0476[/C][C]0.2542[/C][C]0[/C][C]0.028[/C][C]0.4926[/C][C]0[/C][C]0[/C][/ROW]
[ROW][C](p-val)[/C][C](0.9113 )[/C][C](0.0517 )[/C][C](NA )[/C][C](0.9488 )[/C][C](9e-04 )[/C][C](NA )[/C][C](NA )[/C][/ROW]
[ROW][C]Estimates ( 5 )[/C][C]-0.0214[/C][C]0.2555[/C][C]0[/C][C]0[/C][C]0.4942[/C][C]0[/C][C]0[/C][/ROW]
[ROW][C](p-val)[/C][C](0.8654 )[/C][C](0.0474 )[/C][C](NA )[/C][C](NA )[/C][C](7e-04 )[/C][C](NA )[/C][C](NA )[/C][/ROW]
[ROW][C]Estimates ( 6 )[/C][C]0[/C][C]0.2566[/C][C]0[/C][C]0[/C][C]0.4914[/C][C]0[/C][C]0[/C][/ROW]
[ROW][C](p-val)[/C][C](NA )[/C][C](0.0461 )[/C][C](NA )[/C][C](NA )[/C][C](7e-04 )[/C][C](NA )[/C][C](NA )[/C][/ROW]
[/TABLE]
Source: https://freestatistics.org/blog/index.php?pk=7660&T=1

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

As an alternative you can also use a QR Code:  

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

ARIMA Parameter Estimation and Backward Selection
Iterationar1ar2ar3ma1sar1sar2sma1
Estimates ( 1 )0.70990.2346-0.2172-0.75751.192-0.1977-0.9308
(p-val)(0.0554 )(0.1412 )(0.141 )(0.0347 )(0.0058 )(0.5189 )(0.3252 )
Estimates ( 2 )0.6770.2278-0.2214-0.7280.88830-0.6065
(p-val)(0.0633 )(0.152 )(0.1399 )(0.0401 )(5e-04 )(NA )(0.2153 )
Estimates ( 3 )0.72740.2627-0.2545-0.73940.483300
(p-val)(0.0924 )(0.0926 )(0.0983 )(0.0827 )(0.0015 )(NA )(NA )
Estimates ( 4 )-0.04760.254200.0280.492600
(p-val)(0.9113 )(0.0517 )(NA )(0.9488 )(9e-04 )(NA )(NA )
Estimates ( 5 )-0.02140.2555000.494200
(p-val)(0.8654 )(0.0474 )(NA )(NA )(7e-04 )(NA )(NA )
Estimates ( 6 )00.2566000.491400
(p-val)(NA )(0.0461 )(NA )(NA )(7e-04 )(NA )(NA )







Estimated ARIMA Residuals
Value
0.00466550910929266
0.000711627398491264
0.00843531162224707
0.0154851139341733
0.0100299421835313
-0.000569261557558297
-0.00738547196144207
-0.000110743327447515
0.000522102059825012
0.00283399600373236
-0.000916903746325451
-0.00664748804617896
0.0169240935635273
-0.00756312029960388
-0.00343273642372738
-0.00553586562855379
-0.000949066774754037
-0.00893640033795595
0.00331974121976497
-0.00187312877833357
0.00667207216180632
-0.00294814068826277
-0.00110846349123861
-0.00169893338263716
0.000341603018877201
0.00979810720007723
0.00183206356917864
0.00263554879966055
-0.00215958947970130
0.0078567136106038
-0.000393862194577821
0.00054554198624146
0.00726739504838303
-0.0129233415019252
-0.00208213837629145
-0.000847972377935768
0.00511971634244279
0.000202093115440505
-1.60332873742064e-05
0.00632068990174517
0.00320724043626175
-0.00469790621936905
-0.00320938299387663
-0.00468210573956185
-0.00501319791400245
0.00601713318412056
0.00494821569039505
-0.000864739160633121
-0.00106379953885849
0.00745088750012002
0.0135026515714873
-0.00534988486100207
0.00113974424580032
-0.00425344834929486
-0.00717149541026174
0.00457758914083506
-0.00753242753063255
0.000440382059053057
0.00646419728829173
-0.00074895072606651

\begin{tabular}{lllllllll}
\hline
Estimated ARIMA Residuals \tabularnewline
Value \tabularnewline
0.00466550910929266 \tabularnewline
0.000711627398491264 \tabularnewline
0.00843531162224707 \tabularnewline
0.0154851139341733 \tabularnewline
0.0100299421835313 \tabularnewline
-0.000569261557558297 \tabularnewline
-0.00738547196144207 \tabularnewline
-0.000110743327447515 \tabularnewline
0.000522102059825012 \tabularnewline
0.00283399600373236 \tabularnewline
-0.000916903746325451 \tabularnewline
-0.00664748804617896 \tabularnewline
0.0169240935635273 \tabularnewline
-0.00756312029960388 \tabularnewline
-0.00343273642372738 \tabularnewline
-0.00553586562855379 \tabularnewline
-0.000949066774754037 \tabularnewline
-0.00893640033795595 \tabularnewline
0.00331974121976497 \tabularnewline
-0.00187312877833357 \tabularnewline
0.00667207216180632 \tabularnewline
-0.00294814068826277 \tabularnewline
-0.00110846349123861 \tabularnewline
-0.00169893338263716 \tabularnewline
0.000341603018877201 \tabularnewline
0.00979810720007723 \tabularnewline
0.00183206356917864 \tabularnewline
0.00263554879966055 \tabularnewline
-0.00215958947970130 \tabularnewline
0.0078567136106038 \tabularnewline
-0.000393862194577821 \tabularnewline
0.00054554198624146 \tabularnewline
0.00726739504838303 \tabularnewline
-0.0129233415019252 \tabularnewline
-0.00208213837629145 \tabularnewline
-0.000847972377935768 \tabularnewline
0.00511971634244279 \tabularnewline
0.000202093115440505 \tabularnewline
-1.60332873742064e-05 \tabularnewline
0.00632068990174517 \tabularnewline
0.00320724043626175 \tabularnewline
-0.00469790621936905 \tabularnewline
-0.00320938299387663 \tabularnewline
-0.00468210573956185 \tabularnewline
-0.00501319791400245 \tabularnewline
0.00601713318412056 \tabularnewline
0.00494821569039505 \tabularnewline
-0.000864739160633121 \tabularnewline
-0.00106379953885849 \tabularnewline
0.00745088750012002 \tabularnewline
0.0135026515714873 \tabularnewline
-0.00534988486100207 \tabularnewline
0.00113974424580032 \tabularnewline
-0.00425344834929486 \tabularnewline
-0.00717149541026174 \tabularnewline
0.00457758914083506 \tabularnewline
-0.00753242753063255 \tabularnewline
0.000440382059053057 \tabularnewline
0.00646419728829173 \tabularnewline
-0.00074895072606651 \tabularnewline
\hline
\end{tabular}
%Source: https://freestatistics.org/blog/index.php?pk=7660&T=2

[TABLE]
[ROW][C]Estimated ARIMA Residuals[/C][/ROW]
[ROW][C]Value[/C][/ROW]
[ROW][C]0.00466550910929266[/C][/ROW]
[ROW][C]0.000711627398491264[/C][/ROW]
[ROW][C]0.00843531162224707[/C][/ROW]
[ROW][C]0.0154851139341733[/C][/ROW]
[ROW][C]0.0100299421835313[/C][/ROW]
[ROW][C]-0.000569261557558297[/C][/ROW]
[ROW][C]-0.00738547196144207[/C][/ROW]
[ROW][C]-0.000110743327447515[/C][/ROW]
[ROW][C]0.000522102059825012[/C][/ROW]
[ROW][C]0.00283399600373236[/C][/ROW]
[ROW][C]-0.000916903746325451[/C][/ROW]
[ROW][C]-0.00664748804617896[/C][/ROW]
[ROW][C]0.0169240935635273[/C][/ROW]
[ROW][C]-0.00756312029960388[/C][/ROW]
[ROW][C]-0.00343273642372738[/C][/ROW]
[ROW][C]-0.00553586562855379[/C][/ROW]
[ROW][C]-0.000949066774754037[/C][/ROW]
[ROW][C]-0.00893640033795595[/C][/ROW]
[ROW][C]0.00331974121976497[/C][/ROW]
[ROW][C]-0.00187312877833357[/C][/ROW]
[ROW][C]0.00667207216180632[/C][/ROW]
[ROW][C]-0.00294814068826277[/C][/ROW]
[ROW][C]-0.00110846349123861[/C][/ROW]
[ROW][C]-0.00169893338263716[/C][/ROW]
[ROW][C]0.000341603018877201[/C][/ROW]
[ROW][C]0.00979810720007723[/C][/ROW]
[ROW][C]0.00183206356917864[/C][/ROW]
[ROW][C]0.00263554879966055[/C][/ROW]
[ROW][C]-0.00215958947970130[/C][/ROW]
[ROW][C]0.0078567136106038[/C][/ROW]
[ROW][C]-0.000393862194577821[/C][/ROW]
[ROW][C]0.00054554198624146[/C][/ROW]
[ROW][C]0.00726739504838303[/C][/ROW]
[ROW][C]-0.0129233415019252[/C][/ROW]
[ROW][C]-0.00208213837629145[/C][/ROW]
[ROW][C]-0.000847972377935768[/C][/ROW]
[ROW][C]0.00511971634244279[/C][/ROW]
[ROW][C]0.000202093115440505[/C][/ROW]
[ROW][C]-1.60332873742064e-05[/C][/ROW]
[ROW][C]0.00632068990174517[/C][/ROW]
[ROW][C]0.00320724043626175[/C][/ROW]
[ROW][C]-0.00469790621936905[/C][/ROW]
[ROW][C]-0.00320938299387663[/C][/ROW]
[ROW][C]-0.00468210573956185[/C][/ROW]
[ROW][C]-0.00501319791400245[/C][/ROW]
[ROW][C]0.00601713318412056[/C][/ROW]
[ROW][C]0.00494821569039505[/C][/ROW]
[ROW][C]-0.000864739160633121[/C][/ROW]
[ROW][C]-0.00106379953885849[/C][/ROW]
[ROW][C]0.00745088750012002[/C][/ROW]
[ROW][C]0.0135026515714873[/C][/ROW]
[ROW][C]-0.00534988486100207[/C][/ROW]
[ROW][C]0.00113974424580032[/C][/ROW]
[ROW][C]-0.00425344834929486[/C][/ROW]
[ROW][C]-0.00717149541026174[/C][/ROW]
[ROW][C]0.00457758914083506[/C][/ROW]
[ROW][C]-0.00753242753063255[/C][/ROW]
[ROW][C]0.000440382059053057[/C][/ROW]
[ROW][C]0.00646419728829173[/C][/ROW]
[ROW][C]-0.00074895072606651[/C][/ROW]
[/TABLE]
Source: https://freestatistics.org/blog/index.php?pk=7660&T=2

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

As an alternative you can also use a QR Code:  

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

Estimated ARIMA Residuals
Value
0.00466550910929266
0.000711627398491264
0.00843531162224707
0.0154851139341733
0.0100299421835313
-0.000569261557558297
-0.00738547196144207
-0.000110743327447515
0.000522102059825012
0.00283399600373236
-0.000916903746325451
-0.00664748804617896
0.0169240935635273
-0.00756312029960388
-0.00343273642372738
-0.00553586562855379
-0.000949066774754037
-0.00893640033795595
0.00331974121976497
-0.00187312877833357
0.00667207216180632
-0.00294814068826277
-0.00110846349123861
-0.00169893338263716
0.000341603018877201
0.00979810720007723
0.00183206356917864
0.00263554879966055
-0.00215958947970130
0.0078567136106038
-0.000393862194577821
0.00054554198624146
0.00726739504838303
-0.0129233415019252
-0.00208213837629145
-0.000847972377935768
0.00511971634244279
0.000202093115440505
-1.60332873742064e-05
0.00632068990174517
0.00320724043626175
-0.00469790621936905
-0.00320938299387663
-0.00468210573956185
-0.00501319791400245
0.00601713318412056
0.00494821569039505
-0.000864739160633121
-0.00106379953885849
0.00745088750012002
0.0135026515714873
-0.00534988486100207
0.00113974424580032
-0.00425344834929486
-0.00717149541026174
0.00457758914083506
-0.00753242753063255
0.000440382059053057
0.00646419728829173
-0.00074895072606651



Parameters (Session):
par1 = FALSE ; par2 = 0.0 ; par3 = 1 ; par4 = 0 ; par5 = 12 ; par6 = 3 ; par7 = 1 ; par8 = 2 ; par9 = 1 ;
Parameters (R input):
par1 = FALSE ; par2 = 0.0 ; par3 = 1 ; par4 = 0 ; par5 = 12 ; par6 = 3 ; par7 = 1 ; par8 = 2 ; par9 = 1 ;
R code (references can be found in the software module):
library(lattice)
if (par1 == 'TRUE') par1 <- TRUE
if (par1 == 'FALSE') par1 <- FALSE
par2 <- as.numeric(par2) #Box-Cox lambda transformation parameter
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) #degree (p) of the non-seasonal AR(p) polynomial
par7 <- as.numeric(par7) #degree (q) of the non-seasonal MA(q) polynomial
par8 <- as.numeric(par8) #degree (P) of the seasonal AR(P) polynomial
par9 <- as.numeric(par9) #degree (Q) of the seasonal MA(Q) polynomial
armaGR <- function(arima.out, names, n){
try1 <- arima.out$coef
try2 <- sqrt(diag(arima.out$var.coef))
try.data.frame <- data.frame(matrix(NA,ncol=4,nrow=length(names)))
dimnames(try.data.frame) <- list(names,c('coef','std','tstat','pv'))
try.data.frame[,1] <- try1
for(i in 1:length(try2)) try.data.frame[which(rownames(try.data.frame)==names(try2)[i]),2] <- try2[i]
try.data.frame[,3] <- try.data.frame[,1] / try.data.frame[,2]
try.data.frame[,4] <- round((1-pt(abs(try.data.frame[,3]),df=n-(length(try2)+1)))*2,5)
vector <- rep(NA,length(names))
vector[is.na(try.data.frame[,4])] <- 0
maxi <- which.max(try.data.frame[,4])
continue <- max(try.data.frame[,4],na.rm=TRUE) > .05
vector[maxi] <- 0
list(summary=try.data.frame,next.vector=vector,continue=continue)
}
arimaSelect <- function(series, order=c(13,0,0), seasonal=list(order=c(2,0,0),period=12), include.mean=F){
nrc <- order[1]+order[3]+seasonal$order[1]+seasonal$order[3]
coeff <- matrix(NA, nrow=nrc, ncol=nrc)
pval <- matrix(NA, nrow=nrc, ncol=nrc)
mylist <- rep(list(NULL), nrc)
names <- NULL
if(order[1] > 0) names <- paste('ar',1:order[1],sep='')
if(order[3] > 0) names <- c( names , paste('ma',1:order[3],sep='') )
if(seasonal$order[1] > 0) names <- c(names, paste('sar',1:seasonal$order[1],sep=''))
if(seasonal$order[3] > 0) names <- c(names, paste('sma',1:seasonal$order[3],sep=''))
arima.out <- arima(series, order=order, seasonal=seasonal, include.mean=include.mean, method='ML')
mylist[[1]] <- arima.out
last.arma <- armaGR(arima.out, names, length(series))
mystop <- FALSE
i <- 1
coeff[i,] <- last.arma[[1]][,1]
pval [i,] <- last.arma[[1]][,4]
i <- 2
aic <- arima.out$aic
while(!mystop){
mylist[[i]] <- arima.out
arima.out <- arima(series, order=order, seasonal=seasonal, include.mean=include.mean, method='ML', fixed=last.arma$next.vector)
aic <- c(aic, arima.out$aic)
last.arma <- armaGR(arima.out, names, length(series))
mystop <- !last.arma$continue
coeff[i,] <- last.arma[[1]][,1]
pval [i,] <- last.arma[[1]][,4]
i <- i+1
}
list(coeff, pval, mylist, aic=aic)
}
arimaSelectplot <- function(arimaSelect.out,noms,choix){
noms <- names(arimaSelect.out[[3]][[1]]$coef)
coeff <- arimaSelect.out[[1]]
k <- min(which(is.na(coeff[,1])))-1
coeff <- coeff[1:k,]
pval <- arimaSelect.out[[2]][1:k,]
aic <- arimaSelect.out$aic[1:k]
coeff[coeff==0] <- NA
n <- ncol(coeff)
if(missing(choix)) choix <- k
layout(matrix(c(1,1,1,2,
3,3,3,2,
3,3,3,4,
5,6,7,7),nr=4),
widths=c(10,35,45,15),
heights=c(30,30,15,15))
couleurs <- rainbow(75)[1:50]#(50)
ticks <- pretty(coeff)
par(mar=c(1,1,3,1))
plot(aic,k:1-.5,type='o',pch=21,bg='blue',cex=2,axes=F,lty=2,xpd=NA)
points(aic[choix],k-choix+.5,pch=21,cex=4,bg=2,xpd=NA)
title('aic',line=2)
par(mar=c(3,0,0,0))
plot(0,axes=F,xlab='',ylab='',xlim=range(ticks),ylim=c(.1,1))
rect(xleft = min(ticks) + (0:49)/50*(max(ticks)-min(ticks)),
xright = min(ticks) + (1:50)/50*(max(ticks)-min(ticks)),
ytop = rep(1,50),
ybottom= rep(0,50),col=couleurs,border=NA)
axis(1,ticks)
rect(xleft=min(ticks),xright=max(ticks),ytop=1,ybottom=0)
text(mean(coeff,na.rm=T),.5,'coefficients',cex=2,font=2)
par(mar=c(1,1,3,1))
image(1:n,1:k,t(coeff[k:1,]),axes=F,col=couleurs,zlim=range(ticks))
for(i in 1:n) for(j in 1:k) if(!is.na(coeff[j,i])) {
if(pval[j,i]<.01) symb = 'green'
else if( (pval[j,i]<.05) & (pval[j,i]>=.01)) symb = 'orange'
else if( (pval[j,i]<.1) & (pval[j,i]>=.05)) symb = 'red'
else symb = 'black'
polygon(c(i+.5 ,i+.2 ,i+.5 ,i+.5),
c(k-j+0.5,k-j+0.5,k-j+0.8,k-j+0.5),
col=symb)
if(j==choix) {
rect(xleft=i-.5,
xright=i+.5,
ybottom=k-j+1.5,
ytop=k-j+.5,
lwd=4)
text(i,
k-j+1,
round(coeff[j,i],2),
cex=1.2,
font=2)
}
else{
rect(xleft=i-.5,xright=i+.5,ybottom=k-j+1.5,ytop=k-j+.5)
text(i,k-j+1,round(coeff[j,i],2),cex=1.2,font=1)
}
}
axis(3,1:n,noms)
par(mar=c(0.5,0,0,0.5))
plot(0,axes=F,xlab='',ylab='',type='n',xlim=c(0,8),ylim=c(-.2,.8))
cols <- c('green','orange','red','black')
niv <- c('0','0.01','0.05','0.1')
for(i in 0:3){
polygon(c(1+2*i ,1+2*i ,1+2*i-.5 ,1+2*i),
c(.4 ,.7 , .4 , .4),
col=cols[i+1])
text(2*i,0.5,niv[i+1],cex=1.5)
}
text(8,.5,1,cex=1.5)
text(4,0,'p-value',cex=2)
box()
residus <- arimaSelect.out[[3]][[choix]]$res
par(mar=c(1,2,4,1))
acf(residus,main='')
title('acf',line=.5)
par(mar=c(1,2,4,1))
pacf(residus,main='')
title('pacf',line=.5)
par(mar=c(2,2,4,1))
qqnorm(residus,main='')
title('qq-norm',line=.5)
residus
}
if (par2 == 0) x <- log(x)
if (par2 != 0) x <- x^par2
(selection <- arimaSelect(x, order=c(par6,par3,par7), seasonal=list(order=c(par8,par4,par9), period=par5)))
bitmap(file='test1.png')
resid <- arimaSelectplot(selection)
dev.off()
resid
bitmap(file='test2.png')
acf(resid,length(resid)/2, main='Residual Autocorrelation Function')
dev.off()
bitmap(file='test3.png')
pacf(resid,length(resid)/2, main='Residual Partial Autocorrelation Function')
dev.off()
bitmap(file='test4.png')
cpgram(resid, main='Residual Cumulative Periodogram')
dev.off()
bitmap(file='test5.png')
hist(resid, main='Residual Histogram', xlab='values of Residuals')
dev.off()
bitmap(file='test6.png')
densityplot(~resid,col='black',main='Residual Density Plot', xlab='values of Residuals')
dev.off()
bitmap(file='test7.png')
qqnorm(resid, main='Residual Normal Q-Q Plot')
dev.off()
ncols <- length(selection[[1]][1,])
nrows <- length(selection[[2]][,1])-1
load(file='createtable')
a<-table.start()
a<-table.row.start(a)
a<-table.element(a,'ARIMA Parameter Estimation and Backward Selection', ncols+1,TRUE)
a<-table.row.end(a)
a<-table.row.start(a)
a<-table.element(a,'Iteration', header=TRUE)
for (i in 1:ncols) {
a<-table.element(a,names(selection[[3]][[1]]$coef)[i],header=TRUE)
}
a<-table.row.end(a)
for (j in 1:nrows) {
a<-table.row.start(a)
mydum <- 'Estimates ('
mydum <- paste(mydum,j)
mydum <- paste(mydum,')')
a<-table.element(a,mydum, header=TRUE)
for (i in 1:ncols) {
a<-table.element(a,round(selection[[1]][j,i],4))
}
a<-table.row.end(a)
a<-table.row.start(a)
a<-table.element(a,'(p-val)', header=TRUE)
for (i in 1:ncols) {
mydum <- '('
mydum <- paste(mydum,round(selection[[2]][j,i],4),sep='')
mydum <- paste(mydum,')')
a<-table.element(a,mydum)
}
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,'Estimated ARIMA Residuals', 1,TRUE)
a<-table.row.end(a)
a<-table.row.start(a)
a<-table.element(a,'Value', 1,TRUE)
a<-table.row.end(a)
for (i in (par4*par5+par3):length(resid)) {
a<-table.row.start(a)
a<-table.element(a,resid[i])
a<-table.row.end(a)
}
a<-table.end(a)
table.save(a,file='mytable1.tab')