R version 2.8.0 (2008-10-20)
Copyright (C) 2008 The R Foundation for Statistical Computing
ISBN 3-900051-07-0
R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.
R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.
Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.
> x <- array(list(10511,0,10812,0,10738,0,10171,0,9721,0,9897,0,9828,0,9924,0,10371,0,10846,0,10413,0,10709,0,10662,0,10570,0,10297,0,10635,0,10872,0,10296,0,10383,0,10431,0,10574,0,10653,0,10805,0,10872,0,10625,0,10407,0,10463,0,10556,0,10646,0,10702,0,11353,0,11346,0,11451,0,11964,0,12574,0,13031,0,13812,0,14544,1,14931,1,14886,1,16005,1,17064,1,15168,1,16050,1,15839,1,15137,1,14954,1,15648,1,15305,1,15579,1,16348,1,15928,1,16171,1,15937,1,15713,1,15594,1,15683,1,16438,1,17032,1,17696,1,17745,1),dim=c(2,61),dimnames=list(c('Yt','D'),1:61))
> y <- array(NA,dim=c(2,61),dimnames=list(c('Yt','D'),1:61))
> for (i in 1:dim(x)[1])
+ {
+ for (j in 1:dim(x)[2])
+ {
+ y[i,j] <- as.numeric(x[i,j])
+ }
+ }
> par3 = 'Linear Trend'
> par2 = 'Include Monthly Dummies'
> par1 = '1'
> #'GNU S' R Code compiled by R2WASP v. 1.0.44 ()
> #Author: Prof. Dr. P. Wessa
> #To cite this work: AUTHOR(S), (YEAR), YOUR SOFTWARE TITLE (vNUMBER) in Free Statistics Software (v$_version), Office for Research Development and Education, URL http://www.wessa.net/rwasp_YOURPAGE.wasp/
> #Source of accompanying publication: Office for Research, Development, and Education
> #Technical description: Write here your technical program description (don't use hard returns!)
> library(lattice)
> library(lmtest)
Loading required package: zoo
Attaching package: 'zoo'
The following object(s) are masked from package:base :
as.Date.numeric
> n25 <- 25 #minimum number of obs. for Goldfeld-Quandt test
> par1 <- as.numeric(par1)
> x <- t(y)
> k <- length(x[1,])
> n <- length(x[,1])
> x1 <- cbind(x[,par1], x[,1:k!=par1])
> mycolnames <- c(colnames(x)[par1], colnames(x)[1:k!=par1])
> colnames(x1) <- mycolnames #colnames(x)[par1]
> x <- x1
> if (par3 == 'First Differences'){
+ x2 <- array(0, dim=c(n-1,k), dimnames=list(1:(n-1), paste('(1-B)',colnames(x),sep='')))
+ for (i in 1:n-1) {
+ for (j in 1:k) {
+ x2[i,j] <- x[i+1,j] - x[i,j]
+ }
+ }
+ x <- x2
+ }
> if (par2 == 'Include Monthly Dummies'){
+ x2 <- array(0, dim=c(n,11), dimnames=list(1:n, paste('M', seq(1:11), sep ='')))
+ for (i in 1:11){
+ x2[seq(i,n,12),i] <- 1
+ }
+ x <- cbind(x, x2)
+ }
> if (par2 == 'Include Quarterly Dummies'){
+ x2 <- array(0, dim=c(n,3), dimnames=list(1:n, paste('Q', seq(1:3), sep ='')))
+ for (i in 1:3){
+ x2[seq(i,n,4),i] <- 1
+ }
+ x <- cbind(x, x2)
+ }
> k <- length(x[1,])
> if (par3 == 'Linear Trend'){
+ x <- cbind(x, c(1:n))
+ colnames(x)[k+1] <- 't'
+ }
> x
Yt D M1 M2 M3 M4 M5 M6 M7 M8 M9 M10 M11 t
1 10511 0 1 0 0 0 0 0 0 0 0 0 0 1
2 10812 0 0 1 0 0 0 0 0 0 0 0 0 2
3 10738 0 0 0 1 0 0 0 0 0 0 0 0 3
4 10171 0 0 0 0 1 0 0 0 0 0 0 0 4
5 9721 0 0 0 0 0 1 0 0 0 0 0 0 5
6 9897 0 0 0 0 0 0 1 0 0 0 0 0 6
7 9828 0 0 0 0 0 0 0 1 0 0 0 0 7
8 9924 0 0 0 0 0 0 0 0 1 0 0 0 8
9 10371 0 0 0 0 0 0 0 0 0 1 0 0 9
10 10846 0 0 0 0 0 0 0 0 0 0 1 0 10
11 10413 0 0 0 0 0 0 0 0 0 0 0 1 11
12 10709 0 0 0 0 0 0 0 0 0 0 0 0 12
13 10662 0 1 0 0 0 0 0 0 0 0 0 0 13
14 10570 0 0 1 0 0 0 0 0 0 0 0 0 14
15 10297 0 0 0 1 0 0 0 0 0 0 0 0 15
16 10635 0 0 0 0 1 0 0 0 0 0 0 0 16
17 10872 0 0 0 0 0 1 0 0 0 0 0 0 17
18 10296 0 0 0 0 0 0 1 0 0 0 0 0 18
19 10383 0 0 0 0 0 0 0 1 0 0 0 0 19
20 10431 0 0 0 0 0 0 0 0 1 0 0 0 20
21 10574 0 0 0 0 0 0 0 0 0 1 0 0 21
22 10653 0 0 0 0 0 0 0 0 0 0 1 0 22
23 10805 0 0 0 0 0 0 0 0 0 0 0 1 23
24 10872 0 0 0 0 0 0 0 0 0 0 0 0 24
25 10625 0 1 0 0 0 0 0 0 0 0 0 0 25
26 10407 0 0 1 0 0 0 0 0 0 0 0 0 26
27 10463 0 0 0 1 0 0 0 0 0 0 0 0 27
28 10556 0 0 0 0 1 0 0 0 0 0 0 0 28
29 10646 0 0 0 0 0 1 0 0 0 0 0 0 29
30 10702 0 0 0 0 0 0 1 0 0 0 0 0 30
31 11353 0 0 0 0 0 0 0 1 0 0 0 0 31
32 11346 0 0 0 0 0 0 0 0 1 0 0 0 32
33 11451 0 0 0 0 0 0 0 0 0 1 0 0 33
34 11964 0 0 0 0 0 0 0 0 0 0 1 0 34
35 12574 0 0 0 0 0 0 0 0 0 0 0 1 35
36 13031 0 0 0 0 0 0 0 0 0 0 0 0 36
37 13812 0 1 0 0 0 0 0 0 0 0 0 0 37
38 14544 1 0 1 0 0 0 0 0 0 0 0 0 38
39 14931 1 0 0 1 0 0 0 0 0 0 0 0 39
40 14886 1 0 0 0 1 0 0 0 0 0 0 0 40
41 16005 1 0 0 0 0 1 0 0 0 0 0 0 41
42 17064 1 0 0 0 0 0 1 0 0 0 0 0 42
43 15168 1 0 0 0 0 0 0 1 0 0 0 0 43
44 16050 1 0 0 0 0 0 0 0 1 0 0 0 44
45 15839 1 0 0 0 0 0 0 0 0 1 0 0 45
46 15137 1 0 0 0 0 0 0 0 0 0 1 0 46
47 14954 1 0 0 0 0 0 0 0 0 0 0 1 47
48 15648 1 0 0 0 0 0 0 0 0 0 0 0 48
49 15305 1 1 0 0 0 0 0 0 0 0 0 0 49
50 15579 1 0 1 0 0 0 0 0 0 0 0 0 50
51 16348 1 0 0 1 0 0 0 0 0 0 0 0 51
52 15928 1 0 0 0 1 0 0 0 0 0 0 0 52
53 16171 1 0 0 0 0 1 0 0 0 0 0 0 53
54 15937 1 0 0 0 0 0 1 0 0 0 0 0 54
55 15713 1 0 0 0 0 0 0 1 0 0 0 0 55
56 15594 1 0 0 0 0 0 0 0 1 0 0 0 56
57 15683 1 0 0 0 0 0 0 0 0 1 0 0 57
58 16438 1 0 0 0 0 0 0 0 0 0 1 0 58
59 17032 1 0 0 0 0 0 0 0 0 0 0 1 59
60 17696 1 0 0 0 0 0 0 0 0 0 0 0 60
61 17745 1 1 0 0 0 0 0 0 0 0 0 0 61
> k <- length(x[1,])
> df <- as.data.frame(x)
> (mylm <- lm(df))
Call:
lm(formula = df)
Coefficients:
(Intercept) D M1 M2 M3 M4
10291.23 3480.52 15.80 -678.87 -558.86 -732.05
M5 M6 M7 M8 M9 M10
-537.25 -494.04 -837.23 -710.23 -648.62 -477.61
M11 t
-382.61 52.99
> (mysum <- summary(mylm))
Call:
lm(formula = df)
Residuals:
Min 1Q Median 3Q Max
-1079.23 -348.63 -78.55 331.17 1560.57
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 10291.235 369.627 27.842 < 2e-16 ***
D 3480.524 330.786 10.522 6.04e-14 ***
M1 15.801 391.392 0.040 0.9680
M2 -678.868 418.099 -1.624 0.1111
M3 -558.861 416.127 -1.343 0.1857
M4 -732.054 414.354 -1.767 0.0838 .
M5 -537.247 412.783 -1.302 0.1994
M6 -494.041 411.417 -1.201 0.2358
M7 -837.234 410.257 -2.041 0.0469 *
M8 -710.227 409.306 -1.735 0.0893 .
M9 -648.620 408.565 -1.588 0.1191
M10 -477.614 408.034 -1.171 0.2477
M11 -382.607 407.716 -0.938 0.3528
t 52.993 9.307 5.694 7.79e-07 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 644.5 on 47 degrees of freedom
Multiple R-squared: 0.9533, Adjusted R-squared: 0.9404
F-statistic: 73.79 on 13 and 47 DF, p-value: < 2.2e-16
> if (n > n25) {
+ kp3 <- k + 3
+ nmkm3 <- n - k - 3
+ gqarr <- array(NA, dim=c(nmkm3-kp3+1,3))
+ numgqtests <- 0
+ numsignificant1 <- 0
+ numsignificant5 <- 0
+ numsignificant10 <- 0
+ for (mypoint in kp3:nmkm3) {
+ j <- 0
+ numgqtests <- numgqtests + 1
+ for (myalt in c('greater', 'two.sided', 'less')) {
+ j <- j + 1
+ gqarr[mypoint-kp3+1,j] <- gqtest(mylm, point=mypoint, alternative=myalt)$p.value
+ }
+ if (gqarr[mypoint-kp3+1,2] < 0.01) numsignificant1 <- numsignificant1 + 1
+ if (gqarr[mypoint-kp3+1,2] < 0.05) numsignificant5 <- numsignificant5 + 1
+ if (gqarr[mypoint-kp3+1,2] < 0.10) numsignificant10 <- numsignificant10 + 1
+ }
+ gqarr
+ }
[,1] [,2] [,3]
[1,] 0.3608725978 0.7217451955 0.6391274
[2,] 0.2089530449 0.4179060897 0.7910470
[3,] 0.1184668349 0.2369336698 0.8815332
[4,] 0.0602495005 0.1204990011 0.9397505
[5,] 0.0277744062 0.0555488124 0.9722256
[6,] 0.0171008969 0.0342017939 0.9828991
[7,] 0.0072649628 0.0145299256 0.9927350
[8,] 0.0031075717 0.0062151435 0.9968924
[9,] 0.0021160620 0.0042321241 0.9978839
[10,] 0.0018401495 0.0036802991 0.9981599
[11,] 0.0010238501 0.0020477002 0.9989761
[12,] 0.0004281747 0.0008563495 0.9995718
[13,] 0.0003083258 0.0006166516 0.9996917
[14,] 0.0008206247 0.0016412494 0.9991794
[15,] 0.0028764632 0.0057529263 0.9971235
[16,] 0.0052162880 0.0104325761 0.9947837
[17,] 0.0053794659 0.0107589318 0.9946205
[18,] 0.0059737339 0.0119474677 0.9940263
[19,] 0.0203361147 0.0406722295 0.9796639
[20,] 0.0577925203 0.1155850406 0.9422075
[21,] 0.1704370681 0.3408741362 0.8295629
[22,] 0.1113718595 0.2227437191 0.8886281
[23,] 0.0767337219 0.1534674439 0.9232663
[24,] 0.0448228278 0.0896456556 0.9551772
[25,] 0.0393740704 0.0787481407 0.9606259
[26,] 0.1763197326 0.3526394652 0.8236803
[27,] 0.1153189480 0.2306378961 0.8846811
[28,] 0.2188470811 0.4376941622 0.7811529
> postscript(file="/var/www/html/rcomp/tmp/1iden1227553820.ps",horizontal=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556)
> plot(x[,1], type='l', main='Actuals and Interpolation', ylab='value of Actuals and Interpolation (dots)', xlab='time or index')
> points(x[,1]-mysum$resid)
> grid()
> dev.off()
null device
1
> postscript(file="/var/www/html/rcomp/tmp/2cshd1227553820.ps",horizontal=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556)
> plot(mysum$resid, type='b', pch=19, main='Residuals', ylab='value of Residuals', xlab='time or index')
> grid()
> dev.off()
null device
1
> postscript(file="/var/www/html/rcomp/tmp/3buqu1227553820.ps",horizontal=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556)
> hist(mysum$resid, main='Residual Histogram', xlab='values of Residuals')
> grid()
> dev.off()
null device
1
> postscript(file="/var/www/html/rcomp/tmp/4lbxb1227553820.ps",horizontal=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556)
> densityplot(~mysum$resid,col='black',main='Residual Density Plot', xlab='values of Residuals')
> dev.off()
null device
1
> postscript(file="/var/www/html/rcomp/tmp/55er81227553820.ps",horizontal=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556)
> qqnorm(mysum$resid, main='Residual Normal Q-Q Plot')
> qqline(mysum$resid)
> grid()
> dev.off()
null device
1
> (myerror <- as.ts(mysum$resid))
Time Series:
Start = 1
End = 61
Frequency = 1
1 2 3 4 5 6
150.971074 1093.646694 846.646694 399.846694 -297.953306 -218.153306
7 8 9 10 11 12
3.046694 -80.953306 251.446694 502.446694 -78.553306 -218.153306
13 14 15 16 17 18
-333.947521 215.728099 -230.271901 227.928099 217.128099 -455.071901
19 20 21 22 23 24
-77.871901 -209.871901 -181.471901 -326.471901 -322.471901 -691.071901
25 26 27 28 29 30
-1006.866116 -583.190496 -700.190496 -486.990496 -644.790496 -684.990496
31 32 33 34 35 36
256.209504 69.209504 59.609504 348.609504 810.609504 832.009504
37 38 39 40 41 42
1544.215289 -562.632851 -348.632851 -273.432851 597.767149 1560.567149
43 44 45 46 47 48
-45.232851 656.767149 331.167149 -594.832851 -925.832851 -667.432851
49 50 51 52 53 54
-1079.227066 -163.551446 432.448554 132.648554 127.848554 -202.351446
55 56 57 58 59 60
-136.151446 -435.151446 -460.751446 70.248554 516.248554 744.648554
61
724.854339
> postscript(file="/var/www/html/rcomp/tmp/6sxqw1227553820.ps",horizontal=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556)
> dum <- cbind(lag(myerror,k=1),myerror)
> dum
Time Series:
Start = 0
End = 61
Frequency = 1
lag(myerror, k = 1) myerror
0 150.971074 NA
1 1093.646694 150.971074
2 846.646694 1093.646694
3 399.846694 846.646694
4 -297.953306 399.846694
5 -218.153306 -297.953306
6 3.046694 -218.153306
7 -80.953306 3.046694
8 251.446694 -80.953306
9 502.446694 251.446694
10 -78.553306 502.446694
11 -218.153306 -78.553306
12 -333.947521 -218.153306
13 215.728099 -333.947521
14 -230.271901 215.728099
15 227.928099 -230.271901
16 217.128099 227.928099
17 -455.071901 217.128099
18 -77.871901 -455.071901
19 -209.871901 -77.871901
20 -181.471901 -209.871901
21 -326.471901 -181.471901
22 -322.471901 -326.471901
23 -691.071901 -322.471901
24 -1006.866116 -691.071901
25 -583.190496 -1006.866116
26 -700.190496 -583.190496
27 -486.990496 -700.190496
28 -644.790496 -486.990496
29 -684.990496 -644.790496
30 256.209504 -684.990496
31 69.209504 256.209504
32 59.609504 69.209504
33 348.609504 59.609504
34 810.609504 348.609504
35 832.009504 810.609504
36 1544.215289 832.009504
37 -562.632851 1544.215289
38 -348.632851 -562.632851
39 -273.432851 -348.632851
40 597.767149 -273.432851
41 1560.567149 597.767149
42 -45.232851 1560.567149
43 656.767149 -45.232851
44 331.167149 656.767149
45 -594.832851 331.167149
46 -925.832851 -594.832851
47 -667.432851 -925.832851
48 -1079.227066 -667.432851
49 -163.551446 -1079.227066
50 432.448554 -163.551446
51 132.648554 432.448554
52 127.848554 132.648554
53 -202.351446 127.848554
54 -136.151446 -202.351446
55 -435.151446 -136.151446
56 -460.751446 -435.151446
57 70.248554 -460.751446
58 516.248554 70.248554
59 744.648554 516.248554
60 724.854339 744.648554
61 NA 724.854339
> dum1 <- dum[2:length(myerror),]
> dum1
lag(myerror, k = 1) myerror
[1,] 1093.646694 150.971074
[2,] 846.646694 1093.646694
[3,] 399.846694 846.646694
[4,] -297.953306 399.846694
[5,] -218.153306 -297.953306
[6,] 3.046694 -218.153306
[7,] -80.953306 3.046694
[8,] 251.446694 -80.953306
[9,] 502.446694 251.446694
[10,] -78.553306 502.446694
[11,] -218.153306 -78.553306
[12,] -333.947521 -218.153306
[13,] 215.728099 -333.947521
[14,] -230.271901 215.728099
[15,] 227.928099 -230.271901
[16,] 217.128099 227.928099
[17,] -455.071901 217.128099
[18,] -77.871901 -455.071901
[19,] -209.871901 -77.871901
[20,] -181.471901 -209.871901
[21,] -326.471901 -181.471901
[22,] -322.471901 -326.471901
[23,] -691.071901 -322.471901
[24,] -1006.866116 -691.071901
[25,] -583.190496 -1006.866116
[26,] -700.190496 -583.190496
[27,] -486.990496 -700.190496
[28,] -644.790496 -486.990496
[29,] -684.990496 -644.790496
[30,] 256.209504 -684.990496
[31,] 69.209504 256.209504
[32,] 59.609504 69.209504
[33,] 348.609504 59.609504
[34,] 810.609504 348.609504
[35,] 832.009504 810.609504
[36,] 1544.215289 832.009504
[37,] -562.632851 1544.215289
[38,] -348.632851 -562.632851
[39,] -273.432851 -348.632851
[40,] 597.767149 -273.432851
[41,] 1560.567149 597.767149
[42,] -45.232851 1560.567149
[43,] 656.767149 -45.232851
[44,] 331.167149 656.767149
[45,] -594.832851 331.167149
[46,] -925.832851 -594.832851
[47,] -667.432851 -925.832851
[48,] -1079.227066 -667.432851
[49,] -163.551446 -1079.227066
[50,] 432.448554 -163.551446
[51,] 132.648554 432.448554
[52,] 127.848554 132.648554
[53,] -202.351446 127.848554
[54,] -136.151446 -202.351446
[55,] -435.151446 -136.151446
[56,] -460.751446 -435.151446
[57,] 70.248554 -460.751446
[58,] 516.248554 70.248554
[59,] 744.648554 516.248554
[60,] 724.854339 744.648554
> z <- as.data.frame(dum1)
> z
lag(myerror, k = 1) myerror
1 1093.646694 150.971074
2 846.646694 1093.646694
3 399.846694 846.646694
4 -297.953306 399.846694
5 -218.153306 -297.953306
6 3.046694 -218.153306
7 -80.953306 3.046694
8 251.446694 -80.953306
9 502.446694 251.446694
10 -78.553306 502.446694
11 -218.153306 -78.553306
12 -333.947521 -218.153306
13 215.728099 -333.947521
14 -230.271901 215.728099
15 227.928099 -230.271901
16 217.128099 227.928099
17 -455.071901 217.128099
18 -77.871901 -455.071901
19 -209.871901 -77.871901
20 -181.471901 -209.871901
21 -326.471901 -181.471901
22 -322.471901 -326.471901
23 -691.071901 -322.471901
24 -1006.866116 -691.071901
25 -583.190496 -1006.866116
26 -700.190496 -583.190496
27 -486.990496 -700.190496
28 -644.790496 -486.990496
29 -684.990496 -644.790496
30 256.209504 -684.990496
31 69.209504 256.209504
32 59.609504 69.209504
33 348.609504 59.609504
34 810.609504 348.609504
35 832.009504 810.609504
36 1544.215289 832.009504
37 -562.632851 1544.215289
38 -348.632851 -562.632851
39 -273.432851 -348.632851
40 597.767149 -273.432851
41 1560.567149 597.767149
42 -45.232851 1560.567149
43 656.767149 -45.232851
44 331.167149 656.767149
45 -594.832851 331.167149
46 -925.832851 -594.832851
47 -667.432851 -925.832851
48 -1079.227066 -667.432851
49 -163.551446 -1079.227066
50 432.448554 -163.551446
51 132.648554 432.448554
52 127.848554 132.648554
53 -202.351446 127.848554
54 -136.151446 -202.351446
55 -435.151446 -136.151446
56 -460.751446 -435.151446
57 70.248554 -460.751446
58 516.248554 70.248554
59 744.648554 516.248554
60 724.854339 744.648554
> plot(z,main=paste('Residual Lag plot, lowess, and regression line'), ylab='values of Residuals', xlab='lagged values of Residuals')
> lines(lowess(z))
> abline(lm(z))
> grid()
> dev.off()
null device
1
> postscript(file="/var/www/html/rcomp/tmp/7g7ba1227553820.ps",horizontal=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556)
> acf(mysum$resid, lag.max=length(mysum$resid)/2, main='Residual Autocorrelation Function')
> grid()
> dev.off()
null device
1
> postscript(file="/var/www/html/rcomp/tmp/8pbfs1227553820.ps",horizontal=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556)
> pacf(mysum$resid, lag.max=length(mysum$resid)/2, main='Residual Partial Autocorrelation Function')
> grid()
> dev.off()
null device
1
> postscript(file="/var/www/html/rcomp/tmp/98ywr1227553820.ps",horizontal=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556)
> opar <- par(mfrow = c(2,2), oma = c(0, 0, 1.1, 0))
> plot(mylm, las = 1, sub='Residual Diagnostics')
> par(opar)
> dev.off()
null device
1
> if (n > n25) {
+ postscript(file="/var/www/html/rcomp/tmp/100smd1227553820.ps",horizontal=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556)
+ plot(kp3:nmkm3,gqarr[,2], main='Goldfeld-Quandt test',ylab='2-sided p-value',xlab='breakpoint')
+ grid()
+ dev.off()
+ }
null device
1
>
> #Note: the /var/www/html/rcomp/createtable file can be downloaded at http://www.wessa.net/cretab
> load(file="/var/www/html/rcomp/createtable")
>
> a<-table.start()
> a<-table.row.start(a)
> a<-table.element(a, 'Multiple Linear Regression - Estimated Regression Equation', 1, TRUE)
> a<-table.row.end(a)
> myeq <- colnames(x)[1]
> myeq <- paste(myeq, '[t] = ', sep='')
> for (i in 1:k){
+ if (mysum$coefficients[i,1] > 0) myeq <- paste(myeq, '+', '')
+ myeq <- paste(myeq, mysum$coefficients[i,1], sep=' ')
+ if (rownames(mysum$coefficients)[i] != '(Intercept)') {
+ myeq <- paste(myeq, rownames(mysum$coefficients)[i], sep='')
+ if (rownames(mysum$coefficients)[i] != 't') myeq <- paste(myeq, '[t]', sep='')
+ }
+ }
> myeq <- paste(myeq, ' + e[t]')
> a<-table.row.start(a)
> a<-table.element(a, myeq)
> a<-table.row.end(a)
> a<-table.end(a)
> table.save(a,file="/var/www/html/rcomp/tmp/110imo1227553821.tab")
> a<-table.start()
> a<-table.row.start(a)
> a<-table.element(a,hyperlink('http://www.xycoon.com/ols1.htm','Multiple Linear Regression - Ordinary Least Squares',''), 6, TRUE)
> a<-table.row.end(a)
> a<-table.row.start(a)
> a<-table.element(a,'Variable',header=TRUE)
> a<-table.element(a,'Parameter',header=TRUE)
> a<-table.element(a,'S.D.',header=TRUE)
> a<-table.element(a,'T-STAT
H0: parameter = 0',header=TRUE)
> a<-table.element(a,'2-tail p-value',header=TRUE)
> a<-table.element(a,'1-tail p-value',header=TRUE)
> a<-table.row.end(a)
> for (i in 1:k){
+ a<-table.row.start(a)
+ a<-table.element(a,rownames(mysum$coefficients)[i],header=TRUE)
+ a<-table.element(a,mysum$coefficients[i,1])
+ a<-table.element(a, round(mysum$coefficients[i,2],6))
+ a<-table.element(a, round(mysum$coefficients[i,3],4))
+ a<-table.element(a, round(mysum$coefficients[i,4],6))
+ a<-table.element(a, round(mysum$coefficients[i,4]/2,6))
+ a<-table.row.end(a)
+ }
> a<-table.end(a)
> table.save(a,file="/var/www/html/rcomp/tmp/12m18p1227553821.tab")
> a<-table.start()
> a<-table.row.start(a)
> a<-table.element(a, 'Multiple Linear Regression - Regression Statistics', 2, TRUE)
> a<-table.row.end(a)
> a<-table.row.start(a)
> a<-table.element(a, 'Multiple R',1,TRUE)
> a<-table.element(a, sqrt(mysum$r.squared))
> a<-table.row.end(a)
> a<-table.row.start(a)
> a<-table.element(a, 'R-squared',1,TRUE)
> a<-table.element(a, mysum$r.squared)
> a<-table.row.end(a)
> a<-table.row.start(a)
> a<-table.element(a, 'Adjusted R-squared',1,TRUE)
> a<-table.element(a, mysum$adj.r.squared)
> a<-table.row.end(a)
> a<-table.row.start(a)
> a<-table.element(a, 'F-TEST (value)',1,TRUE)
> a<-table.element(a, mysum$fstatistic[1])
> a<-table.row.end(a)
> a<-table.row.start(a)
> a<-table.element(a, 'F-TEST (DF numerator)',1,TRUE)
> a<-table.element(a, mysum$fstatistic[2])
> a<-table.row.end(a)
> a<-table.row.start(a)
> a<-table.element(a, 'F-TEST (DF denominator)',1,TRUE)
> a<-table.element(a, mysum$fstatistic[3])
> a<-table.row.end(a)
> a<-table.row.start(a)
> a<-table.element(a, 'p-value',1,TRUE)
> a<-table.element(a, 1-pf(mysum$fstatistic[1],mysum$fstatistic[2],mysum$fstatistic[3]))
> a<-table.row.end(a)
> a<-table.row.start(a)
> a<-table.element(a, 'Multiple Linear Regression - Residual Statistics', 2, TRUE)
> a<-table.row.end(a)
> a<-table.row.start(a)
> a<-table.element(a, 'Residual Standard Deviation',1,TRUE)
> a<-table.element(a, mysum$sigma)
> a<-table.row.end(a)
> a<-table.row.start(a)
> a<-table.element(a, 'Sum Squared Residuals',1,TRUE)
> a<-table.element(a, sum(myerror*myerror))
> a<-table.row.end(a)
> a<-table.end(a)
> table.save(a,file="/var/www/html/rcomp/tmp/13nmjt1227553821.tab")
> a<-table.start()
> a<-table.row.start(a)
> a<-table.element(a, 'Multiple Linear Regression - Actuals, Interpolation, and Residuals', 4, TRUE)
> a<-table.row.end(a)
> a<-table.row.start(a)
> a<-table.element(a, 'Time or Index', 1, TRUE)
> a<-table.element(a, 'Actuals', 1, TRUE)
> a<-table.element(a, 'Interpolation
Forecast', 1, TRUE)
> a<-table.element(a, 'Residuals
Prediction Error', 1, TRUE)
> a<-table.row.end(a)
> for (i in 1:n) {
+ a<-table.row.start(a)
+ a<-table.element(a,i, 1, TRUE)
+ a<-table.element(a,x[i])
+ a<-table.element(a,x[i]-mysum$resid[i])
+ a<-table.element(a,mysum$resid[i])
+ a<-table.row.end(a)
+ }
> a<-table.end(a)
> table.save(a,file="/var/www/html/rcomp/tmp/148v141227553821.tab")
> if (n > n25) {
+ a<-table.start()
+ a<-table.row.start(a)
+ a<-table.element(a,'Goldfeld-Quandt test for Heteroskedasticity',4,TRUE)
+ a<-table.row.end(a)
+ a<-table.row.start(a)
+ a<-table.element(a,'p-values',header=TRUE)
+ a<-table.element(a,'Alternative Hypothesis',3,header=TRUE)
+ a<-table.row.end(a)
+ a<-table.row.start(a)
+ a<-table.element(a,'breakpoint index',header=TRUE)
+ a<-table.element(a,'greater',header=TRUE)
+ a<-table.element(a,'2-sided',header=TRUE)
+ a<-table.element(a,'less',header=TRUE)
+ a<-table.row.end(a)
+ for (mypoint in kp3:nmkm3) {
+ a<-table.row.start(a)
+ a<-table.element(a,mypoint,header=TRUE)
+ a<-table.element(a,gqarr[mypoint-kp3+1,1])
+ a<-table.element(a,gqarr[mypoint-kp3+1,2])
+ a<-table.element(a,gqarr[mypoint-kp3+1,3])
+ a<-table.row.end(a)
+ }
+ a<-table.end(a)
+ table.save(a,file="/var/www/html/rcomp/tmp/15kk0u1227553821.tab")
+ a<-table.start()
+ a<-table.row.start(a)
+ a<-table.element(a,'Meta Analysis of Goldfeld-Quandt test for Heteroskedasticity',4,TRUE)
+ a<-table.row.end(a)
+ a<-table.row.start(a)
+ a<-table.element(a,'Description',header=TRUE)
+ a<-table.element(a,'# significant tests',header=TRUE)
+ a<-table.element(a,'% significant tests',header=TRUE)
+ a<-table.element(a,'OK/NOK',header=TRUE)
+ a<-table.row.end(a)
+ a<-table.row.start(a)
+ a<-table.element(a,'1% type I error level',header=TRUE)
+ a<-table.element(a,numsignificant1)
+ a<-table.element(a,numsignificant1/numgqtests)
+ if (numsignificant1/numgqtests < 0.01) dum <- 'OK' else dum <- 'NOK'
+ a<-table.element(a,dum)
+ a<-table.row.end(a)
+ a<-table.row.start(a)
+ a<-table.element(a,'5% type I error level',header=TRUE)
+ a<-table.element(a,numsignificant5)
+ a<-table.element(a,numsignificant5/numgqtests)
+ if (numsignificant5/numgqtests < 0.05) dum <- 'OK' else dum <- 'NOK'
+ a<-table.element(a,dum)
+ a<-table.row.end(a)
+ a<-table.row.start(a)
+ a<-table.element(a,'10% type I error level',header=TRUE)
+ a<-table.element(a,numsignificant10)
+ a<-table.element(a,numsignificant10/numgqtests)
+ if (numsignificant10/numgqtests < 0.1) dum <- 'OK' else dum <- 'NOK'
+ a<-table.element(a,dum)
+ a<-table.row.end(a)
+ a<-table.end(a)
+ table.save(a,file="/var/www/html/rcomp/tmp/16ddnv1227553821.tab")
+ }
>
> system("convert tmp/1iden1227553820.ps tmp/1iden1227553820.png")
> system("convert tmp/2cshd1227553820.ps tmp/2cshd1227553820.png")
> system("convert tmp/3buqu1227553820.ps tmp/3buqu1227553820.png")
> system("convert tmp/4lbxb1227553820.ps tmp/4lbxb1227553820.png")
> system("convert tmp/55er81227553820.ps tmp/55er81227553820.png")
> system("convert tmp/6sxqw1227553820.ps tmp/6sxqw1227553820.png")
> system("convert tmp/7g7ba1227553820.ps tmp/7g7ba1227553820.png")
> system("convert tmp/8pbfs1227553820.ps tmp/8pbfs1227553820.png")
> system("convert tmp/98ywr1227553820.ps tmp/98ywr1227553820.png")
> system("convert tmp/100smd1227553820.ps tmp/100smd1227553820.png")
>
>
> proc.time()
user system elapsed
2.415 1.580 3.230