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(16,0,8,0,-10,0,-24,0,-19,0,8,0,24,0,14,0,7,0,9,0,-26,0,19,0,15,0,-1,0,-10,0,-21,0,-14,0,-27,0,26,0,23,0,5,0,19,0,-19,0,24,0,17,0,1,0,-9,0,-16,0,-21,0,-14,0,31,0,27,0,10,0,12,0,-23,0,13,0,26,0,-1,0,4,0,-16,0,-5,0,9,0,23,0,9,0,2,0,10,1,-29,1,17,1,9,1,9,1,-10,1,-23,1,13,1,13,1,-9,1,9,1,5,1,8,1,-18,1,7,1,4,0),dim=c(2,61),dimnames=list(c('x','y'),1:61))
> y <- array(NA,dim=c(2,61),dimnames=list(c('x','y'),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
x y M1 M2 M3 M4 M5 M6 M7 M8 M9 M10 M11 t
1 16 0 1 0 0 0 0 0 0 0 0 0 0 1
2 8 0 0 1 0 0 0 0 0 0 0 0 0 2
3 -10 0 0 0 1 0 0 0 0 0 0 0 0 3
4 -24 0 0 0 0 1 0 0 0 0 0 0 0 4
5 -19 0 0 0 0 0 1 0 0 0 0 0 0 5
6 8 0 0 0 0 0 0 1 0 0 0 0 0 6
7 24 0 0 0 0 0 0 0 1 0 0 0 0 7
8 14 0 0 0 0 0 0 0 0 1 0 0 0 8
9 7 0 0 0 0 0 0 0 0 0 1 0 0 9
10 9 0 0 0 0 0 0 0 0 0 0 1 0 10
11 -26 0 0 0 0 0 0 0 0 0 0 0 1 11
12 19 0 0 0 0 0 0 0 0 0 0 0 0 12
13 15 0 1 0 0 0 0 0 0 0 0 0 0 13
14 -1 0 0 1 0 0 0 0 0 0 0 0 0 14
15 -10 0 0 0 1 0 0 0 0 0 0 0 0 15
16 -21 0 0 0 0 1 0 0 0 0 0 0 0 16
17 -14 0 0 0 0 0 1 0 0 0 0 0 0 17
18 -27 0 0 0 0 0 0 1 0 0 0 0 0 18
19 26 0 0 0 0 0 0 0 1 0 0 0 0 19
20 23 0 0 0 0 0 0 0 0 1 0 0 0 20
21 5 0 0 0 0 0 0 0 0 0 1 0 0 21
22 19 0 0 0 0 0 0 0 0 0 0 1 0 22
23 -19 0 0 0 0 0 0 0 0 0 0 0 1 23
24 24 0 0 0 0 0 0 0 0 0 0 0 0 24
25 17 0 1 0 0 0 0 0 0 0 0 0 0 25
26 1 0 0 1 0 0 0 0 0 0 0 0 0 26
27 -9 0 0 0 1 0 0 0 0 0 0 0 0 27
28 -16 0 0 0 0 1 0 0 0 0 0 0 0 28
29 -21 0 0 0 0 0 1 0 0 0 0 0 0 29
30 -14 0 0 0 0 0 0 1 0 0 0 0 0 30
31 31 0 0 0 0 0 0 0 1 0 0 0 0 31
32 27 0 0 0 0 0 0 0 0 1 0 0 0 32
33 10 0 0 0 0 0 0 0 0 0 1 0 0 33
34 12 0 0 0 0 0 0 0 0 0 0 1 0 34
35 -23 0 0 0 0 0 0 0 0 0 0 0 1 35
36 13 0 0 0 0 0 0 0 0 0 0 0 0 36
37 26 0 1 0 0 0 0 0 0 0 0 0 0 37
38 -1 0 0 1 0 0 0 0 0 0 0 0 0 38
39 4 0 0 0 1 0 0 0 0 0 0 0 0 39
40 -16 0 0 0 0 1 0 0 0 0 0 0 0 40
41 -5 0 0 0 0 0 1 0 0 0 0 0 0 41
42 9 0 0 0 0 0 0 1 0 0 0 0 0 42
43 23 0 0 0 0 0 0 0 1 0 0 0 0 43
44 9 0 0 0 0 0 0 0 0 1 0 0 0 44
45 2 0 0 0 0 0 0 0 0 0 1 0 0 45
46 10 1 0 0 0 0 0 0 0 0 0 1 0 46
47 -29 1 0 0 0 0 0 0 0 0 0 0 1 47
48 17 1 0 0 0 0 0 0 0 0 0 0 0 48
49 9 1 1 0 0 0 0 0 0 0 0 0 0 49
50 9 1 0 1 0 0 0 0 0 0 0 0 0 50
51 -10 1 0 0 1 0 0 0 0 0 0 0 0 51
52 -23 1 0 0 0 1 0 0 0 0 0 0 0 52
53 13 1 0 0 0 0 1 0 0 0 0 0 0 53
54 13 1 0 0 0 0 0 1 0 0 0 0 0 54
55 -9 1 0 0 0 0 0 0 1 0 0 0 0 55
56 9 1 0 0 0 0 0 0 0 1 0 0 0 56
57 5 1 0 0 0 0 0 0 0 0 1 0 0 57
58 8 1 0 0 0 0 0 0 0 0 0 1 0 58
59 -18 1 0 0 0 0 0 0 0 0 0 0 1 59
60 7 1 0 0 0 0 0 0 0 0 0 0 0 60
61 4 0 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) y M1 M2 M3 M4
16.13432 -2.39912 -1.94516 -13.05056 -23.27349 -36.29642
M5 M6 M7 M8 M9 M10
-25.51934 -18.54227 2.63481 0.01188 -10.61105 -4.35415
M11 t
-38.97707 0.02293
> (mysum <- summary(mylm))
Call:
lm(formula = df)
Residuals:
Min 1Q Median 3Q Max
-26.6309 -3.9296 -0.5596 4.8704 23.5691
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 16.13432 4.99357 3.231 0.002255 **
y -2.39912 4.08954 -0.587 0.560249
M1 -1.94516 5.75662 -0.338 0.736943
M2 -13.05056 6.01027 -2.171 0.034984 *
M3 -23.27349 6.00430 -3.876 0.000328 ***
M4 -36.29642 5.99998 -6.049 2.27e-07 ***
M5 -25.51934 5.99730 -4.255 9.89e-05 ***
M6 -18.54227 5.99627 -3.092 0.003337 **
M7 2.63481 5.99688 0.439 0.662412
M8 0.01188 5.99913 0.002 0.998428
M9 -10.61105 6.00303 -1.768 0.083617 .
M10 -4.35415 5.97207 -0.729 0.469568
M11 -38.97707 5.96959 -6.529 4.24e-08 ***
t 0.02293 0.09934 0.231 0.818484
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 9.437 on 47 degrees of freedom
Multiple R-squared: 0.7354, Adjusted R-squared: 0.6623
F-statistic: 10.05 on 13 and 47 DF, p-value: 1.313e-09
> 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.07588493 0.15176986 0.9241151
[2,] 0.74693783 0.50612433 0.2530622
[3,] 0.64871528 0.70256945 0.3512847
[4,] 0.59949137 0.80101725 0.4005086
[5,] 0.47541241 0.95082482 0.5245876
[6,] 0.42764738 0.85529475 0.5723526
[7,] 0.34372202 0.68744405 0.6562780
[8,] 0.26754893 0.53509786 0.7324511
[9,] 0.18557343 0.37114686 0.8144266
[10,] 0.12443708 0.24887417 0.8755629
[11,] 0.08255976 0.16511952 0.9174402
[12,] 0.05563350 0.11126701 0.9443665
[13,] 0.08442274 0.16884549 0.9155773
[14,] 0.20311670 0.40623341 0.7968833
[15,] 0.22287289 0.44574578 0.7771271
[16,] 0.22313137 0.44626274 0.7768686
[17,] 0.15880619 0.31761239 0.8411938
[18,] 0.10753202 0.21506404 0.8924680
[19,] 0.07051442 0.14102884 0.9294856
[20,] 0.05507879 0.11015758 0.9449212
[21,] 0.07098777 0.14197555 0.9290122
[22,] 0.06222935 0.12445869 0.9377707
[23,] 0.06982722 0.13965445 0.9301728
[24,] 0.04266949 0.08533899 0.9573305
[25,] 0.09397310 0.18794621 0.9060269
[26,] 0.11118442 0.22236883 0.8888156
[27,] 0.69968710 0.60062580 0.3003129
[28,] 0.58296070 0.83407860 0.4170393
> postscript(file="/var/www/html/rcomp/tmp/1vitg1227466917.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/23cgs1227466917.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/3s0fw1227466917.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/42l2x1227466917.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/5ykhc1227466917.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
1.7879234 4.8703976 -2.9296024 -3.9296024 -9.7296024 10.2703976
7 8 9 10 11 12
5.0703976 -2.3296024 1.2703976 -3.0094256 -3.4094256 2.5905744
13 14 15 16 17 18
0.5128130 -4.4047128 -3.2047128 -1.2047128 -5.0047128 -25.0047128
19 20 21 22 23 24
6.7952872 6.3952872 -1.0047128 6.7154639 3.3154639 7.3154639
25 26 27 28 29 30
2.2377025 -2.6798233 -2.4798233 3.5201767 -12.2798233 -12.2798233
31 32 33 34 35 36
11.5201767 10.1201767 3.7201767 -0.5596465 -0.9596465 -3.9596465
37 38 39 40 41 42
10.9625920 -4.9549337 10.2450663 3.2450663 3.4450663 10.4450663
43 44 45 46 47 48
3.2450663 -8.1549337 -4.5549337 -0.4356406 -4.8356406 2.1643594
49 50 51 52 53 54
-3.9134021 7.1690722 -1.6309278 -1.6309278 23.5690722 16.5690722
55 56 57 58 59 60
-26.6309278 -6.0309278 0.5690722 -2.7107511 5.8892489 -8.1107511
61
-11.5876289
> postscript(file="/var/www/html/rcomp/tmp/6cdke1227466917.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 1.7879234 NA
1 4.8703976 1.7879234
2 -2.9296024 4.8703976
3 -3.9296024 -2.9296024
4 -9.7296024 -3.9296024
5 10.2703976 -9.7296024
6 5.0703976 10.2703976
7 -2.3296024 5.0703976
8 1.2703976 -2.3296024
9 -3.0094256 1.2703976
10 -3.4094256 -3.0094256
11 2.5905744 -3.4094256
12 0.5128130 2.5905744
13 -4.4047128 0.5128130
14 -3.2047128 -4.4047128
15 -1.2047128 -3.2047128
16 -5.0047128 -1.2047128
17 -25.0047128 -5.0047128
18 6.7952872 -25.0047128
19 6.3952872 6.7952872
20 -1.0047128 6.3952872
21 6.7154639 -1.0047128
22 3.3154639 6.7154639
23 7.3154639 3.3154639
24 2.2377025 7.3154639
25 -2.6798233 2.2377025
26 -2.4798233 -2.6798233
27 3.5201767 -2.4798233
28 -12.2798233 3.5201767
29 -12.2798233 -12.2798233
30 11.5201767 -12.2798233
31 10.1201767 11.5201767
32 3.7201767 10.1201767
33 -0.5596465 3.7201767
34 -0.9596465 -0.5596465
35 -3.9596465 -0.9596465
36 10.9625920 -3.9596465
37 -4.9549337 10.9625920
38 10.2450663 -4.9549337
39 3.2450663 10.2450663
40 3.4450663 3.2450663
41 10.4450663 3.4450663
42 3.2450663 10.4450663
43 -8.1549337 3.2450663
44 -4.5549337 -8.1549337
45 -0.4356406 -4.5549337
46 -4.8356406 -0.4356406
47 2.1643594 -4.8356406
48 -3.9134021 2.1643594
49 7.1690722 -3.9134021
50 -1.6309278 7.1690722
51 -1.6309278 -1.6309278
52 23.5690722 -1.6309278
53 16.5690722 23.5690722
54 -26.6309278 16.5690722
55 -6.0309278 -26.6309278
56 0.5690722 -6.0309278
57 -2.7107511 0.5690722
58 5.8892489 -2.7107511
59 -8.1107511 5.8892489
60 -11.5876289 -8.1107511
61 NA -11.5876289
> dum1 <- dum[2:length(myerror),]
> dum1
lag(myerror, k = 1) myerror
[1,] 4.8703976 1.7879234
[2,] -2.9296024 4.8703976
[3,] -3.9296024 -2.9296024
[4,] -9.7296024 -3.9296024
[5,] 10.2703976 -9.7296024
[6,] 5.0703976 10.2703976
[7,] -2.3296024 5.0703976
[8,] 1.2703976 -2.3296024
[9,] -3.0094256 1.2703976
[10,] -3.4094256 -3.0094256
[11,] 2.5905744 -3.4094256
[12,] 0.5128130 2.5905744
[13,] -4.4047128 0.5128130
[14,] -3.2047128 -4.4047128
[15,] -1.2047128 -3.2047128
[16,] -5.0047128 -1.2047128
[17,] -25.0047128 -5.0047128
[18,] 6.7952872 -25.0047128
[19,] 6.3952872 6.7952872
[20,] -1.0047128 6.3952872
[21,] 6.7154639 -1.0047128
[22,] 3.3154639 6.7154639
[23,] 7.3154639 3.3154639
[24,] 2.2377025 7.3154639
[25,] -2.6798233 2.2377025
[26,] -2.4798233 -2.6798233
[27,] 3.5201767 -2.4798233
[28,] -12.2798233 3.5201767
[29,] -12.2798233 -12.2798233
[30,] 11.5201767 -12.2798233
[31,] 10.1201767 11.5201767
[32,] 3.7201767 10.1201767
[33,] -0.5596465 3.7201767
[34,] -0.9596465 -0.5596465
[35,] -3.9596465 -0.9596465
[36,] 10.9625920 -3.9596465
[37,] -4.9549337 10.9625920
[38,] 10.2450663 -4.9549337
[39,] 3.2450663 10.2450663
[40,] 3.4450663 3.2450663
[41,] 10.4450663 3.4450663
[42,] 3.2450663 10.4450663
[43,] -8.1549337 3.2450663
[44,] -4.5549337 -8.1549337
[45,] -0.4356406 -4.5549337
[46,] -4.8356406 -0.4356406
[47,] 2.1643594 -4.8356406
[48,] -3.9134021 2.1643594
[49,] 7.1690722 -3.9134021
[50,] -1.6309278 7.1690722
[51,] -1.6309278 -1.6309278
[52,] 23.5690722 -1.6309278
[53,] 16.5690722 23.5690722
[54,] -26.6309278 16.5690722
[55,] -6.0309278 -26.6309278
[56,] 0.5690722 -6.0309278
[57,] -2.7107511 0.5690722
[58,] 5.8892489 -2.7107511
[59,] -8.1107511 5.8892489
[60,] -11.5876289 -8.1107511
> z <- as.data.frame(dum1)
> z
lag(myerror, k = 1) myerror
1 4.8703976 1.7879234
2 -2.9296024 4.8703976
3 -3.9296024 -2.9296024
4 -9.7296024 -3.9296024
5 10.2703976 -9.7296024
6 5.0703976 10.2703976
7 -2.3296024 5.0703976
8 1.2703976 -2.3296024
9 -3.0094256 1.2703976
10 -3.4094256 -3.0094256
11 2.5905744 -3.4094256
12 0.5128130 2.5905744
13 -4.4047128 0.5128130
14 -3.2047128 -4.4047128
15 -1.2047128 -3.2047128
16 -5.0047128 -1.2047128
17 -25.0047128 -5.0047128
18 6.7952872 -25.0047128
19 6.3952872 6.7952872
20 -1.0047128 6.3952872
21 6.7154639 -1.0047128
22 3.3154639 6.7154639
23 7.3154639 3.3154639
24 2.2377025 7.3154639
25 -2.6798233 2.2377025
26 -2.4798233 -2.6798233
27 3.5201767 -2.4798233
28 -12.2798233 3.5201767
29 -12.2798233 -12.2798233
30 11.5201767 -12.2798233
31 10.1201767 11.5201767
32 3.7201767 10.1201767
33 -0.5596465 3.7201767
34 -0.9596465 -0.5596465
35 -3.9596465 -0.9596465
36 10.9625920 -3.9596465
37 -4.9549337 10.9625920
38 10.2450663 -4.9549337
39 3.2450663 10.2450663
40 3.4450663 3.2450663
41 10.4450663 3.4450663
42 3.2450663 10.4450663
43 -8.1549337 3.2450663
44 -4.5549337 -8.1549337
45 -0.4356406 -4.5549337
46 -4.8356406 -0.4356406
47 2.1643594 -4.8356406
48 -3.9134021 2.1643594
49 7.1690722 -3.9134021
50 -1.6309278 7.1690722
51 -1.6309278 -1.6309278
52 23.5690722 -1.6309278
53 16.5690722 23.5690722
54 -26.6309278 16.5690722
55 -6.0309278 -26.6309278
56 0.5690722 -6.0309278
57 -2.7107511 0.5690722
58 5.8892489 -2.7107511
59 -8.1107511 5.8892489
60 -11.5876289 -8.1107511
> 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/7yop71227466918.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/8kg571227466918.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/96eg91227466918.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/10qnll1227466918.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/11f40o1227466918.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/12falf1227466918.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/139c8z1227466918.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/14cc0j1227466918.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/15pbaw1227466918.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/1623tm1227466918.tab")
+ }
>
> system("convert tmp/1vitg1227466917.ps tmp/1vitg1227466917.png")
> system("convert tmp/23cgs1227466917.ps tmp/23cgs1227466917.png")
> system("convert tmp/3s0fw1227466917.ps tmp/3s0fw1227466917.png")
> system("convert tmp/42l2x1227466917.ps tmp/42l2x1227466917.png")
> system("convert tmp/5ykhc1227466917.ps tmp/5ykhc1227466917.png")
> system("convert tmp/6cdke1227466917.ps tmp/6cdke1227466917.png")
> system("convert tmp/7yop71227466918.ps tmp/7yop71227466918.png")
> system("convert tmp/8kg571227466918.ps tmp/8kg571227466918.png")
> system("convert tmp/96eg91227466918.ps tmp/96eg91227466918.png")
> system("convert tmp/10qnll1227466918.ps tmp/10qnll1227466918.png")
>
>
> proc.time()
user system elapsed
2.592 1.646 3.283