R version 2.13.0 (2011-04-13) Copyright (C) 2011 The R Foundation for Statistical Computing ISBN 3-900051-07-0 Platform: i486-pc-linux-gnu (32-bit) 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(101.82 + ,107.34 + ,93.63 + ,101.76 + ,101.68 + ,107.34 + ,93.63 + ,102.37 + ,101.68 + ,107.34 + ,93.63 + ,102.38 + ,102.45 + ,107.34 + ,96.13 + ,102.86 + ,102.45 + ,107.34 + ,96.13 + ,102.87 + ,102.45 + ,107.34 + ,96.13 + ,102.92 + ,102.45 + ,107.34 + ,96.13 + ,102.95 + ,102.45 + ,107.34 + ,96.13 + ,103.02 + ,102.45 + ,112.60 + ,96.13 + ,104.08 + ,102.52 + ,112.60 + ,96.13 + ,104.16 + ,102.52 + ,112.60 + ,96.13 + ,104.24 + ,102.85 + ,112.60 + ,96.13 + ,104.33 + ,102.85 + ,112.61 + ,96.13 + ,104.73 + ,102.85 + ,112.61 + ,96.13 + ,104.86 + ,103.25 + ,112.61 + ,96.13 + ,105.03 + ,103.25 + ,112.61 + ,98.73 + ,105.62 + ,103.25 + ,112.61 + ,98.73 + ,105.63 + ,103.25 + ,112.61 + ,98.73 + ,105.63 + ,104.45 + ,112.61 + ,98.73 + ,105.94 + ,104.45 + ,112.61 + ,98.73 + ,106.61 + ,104.45 + ,118.65 + ,98.73 + ,107.69 + ,104.80 + ,118.65 + ,98.73 + ,107.78 + ,104.80 + ,118.65 + ,98.73 + ,107.93 + ,105.29 + ,118.65 + ,98.73 + ,108.48 + ,105.29 + ,114.29 + ,98.73 + ,108.14 + ,105.29 + ,114.29 + ,98.73 + ,108.48 + ,105.29 + ,114.29 + ,98.73 + ,108.48 + ,106.04 + ,114.29 + ,101.67 + ,108.89 + ,105.94 + ,114.29 + ,101.67 + ,108.93 + ,105.94 + ,114.29 + ,101.67 + ,109.21 + ,105.94 + ,114.29 + ,101.67 + ,109.47 + ,106.28 + ,114.29 + ,101.67 + ,109.80 + ,106.48 + ,123.33 + ,101.67 + ,111.73 + ,107.19 + ,123.33 + ,101.67 + ,111.85 + ,108.14 + ,123.33 + ,101.67 + ,112.12 + ,108.22 + ,123.33 + ,101.67 + ,112.15 + ,108.22 + ,123.33 + ,101.67 + ,112.17 + ,108.61 + ,123.33 + ,101.67 + ,112.67 + ,108.61 + ,123.33 + ,101.67 + ,112.80 + ,108.61 + ,123.33 + ,107.94 + ,113.44 + ,108.61 + ,123.33 + ,107.94 + ,113.53 + ,109.06 + ,123.33 + ,107.94 + ,114.53 + ,109.06 + ,123.33 + ,107.94 + ,114.51 + ,112.93 + ,123.33 + ,107.94 + ,115.05 + ,115.84 + ,129.03 + ,107.94 + ,116.67 + ,118.57 + ,128.76 + ,107.94 + ,117.07 + ,118.57 + ,128.76 + ,107.94 + ,116.92 + ,118.86 + ,128.76 + ,107.94 + ,117.00 + ,118.98 + ,128.76 + ,107.94 + ,117.02 + ,119.27 + ,128.76 + ,107.94 + ,117.35 + ,119.39 + ,128.76 + ,107.94 + ,117.36 + ,119.49 + ,128.76 + ,110.30 + ,117.82 + ,119.59 + ,128.76 + ,110.30 + ,117.88 + ,120.12 + ,128.76 + ,110.30 + ,118.24 + ,120.14 + ,128.76 + ,110.30 + ,118.50 + ,120.14 + ,128.76 + ,110.30 + ,118.80 + ,120.14 + ,132.63 + ,110.30 + ,119.76 + ,120.14 + ,132.63 + ,110.30 + ,120.09) + ,dim=c(4 + ,58) + ,dimnames=list(c('Bioscoop' + ,'Schouwburgabonnement' + ,'Daguitstap' + ,'Cultuuruitgaven') + ,1:58)) > y <- array(NA,dim=c(4,58),dimnames=list(c('Bioscoop','Schouwburgabonnement','Daguitstap','Cultuuruitgaven'),1:58)) > 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 = 'Do not include Seasonal Dummies' > par1 = '4' > library(lattice) > library(lmtest) Loading required package: zoo > 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 Cultuuruitgaven Bioscoop Schouwburgabonnement Daguitstap t 1 101.76 101.82 107.34 93.63 1 2 102.37 101.68 107.34 93.63 2 3 102.38 101.68 107.34 93.63 3 4 102.86 102.45 107.34 96.13 4 5 102.87 102.45 107.34 96.13 5 6 102.92 102.45 107.34 96.13 6 7 102.95 102.45 107.34 96.13 7 8 103.02 102.45 107.34 96.13 8 9 104.08 102.45 112.60 96.13 9 10 104.16 102.52 112.60 96.13 10 11 104.24 102.52 112.60 96.13 11 12 104.33 102.85 112.60 96.13 12 13 104.73 102.85 112.61 96.13 13 14 104.86 102.85 112.61 96.13 14 15 105.03 103.25 112.61 96.13 15 16 105.62 103.25 112.61 98.73 16 17 105.63 103.25 112.61 98.73 17 18 105.63 103.25 112.61 98.73 18 19 105.94 104.45 112.61 98.73 19 20 106.61 104.45 112.61 98.73 20 21 107.69 104.45 118.65 98.73 21 22 107.78 104.80 118.65 98.73 22 23 107.93 104.80 118.65 98.73 23 24 108.48 105.29 118.65 98.73 24 25 108.14 105.29 114.29 98.73 25 26 108.48 105.29 114.29 98.73 26 27 108.48 105.29 114.29 98.73 27 28 108.89 106.04 114.29 101.67 28 29 108.93 105.94 114.29 101.67 29 30 109.21 105.94 114.29 101.67 30 31 109.47 105.94 114.29 101.67 31 32 109.80 106.28 114.29 101.67 32 33 111.73 106.48 123.33 101.67 33 34 111.85 107.19 123.33 101.67 34 35 112.12 108.14 123.33 101.67 35 36 112.15 108.22 123.33 101.67 36 37 112.17 108.22 123.33 101.67 37 38 112.67 108.61 123.33 101.67 38 39 112.80 108.61 123.33 101.67 39 40 113.44 108.61 123.33 107.94 40 41 113.53 108.61 123.33 107.94 41 42 114.53 109.06 123.33 107.94 42 43 114.51 109.06 123.33 107.94 43 44 115.05 112.93 123.33 107.94 44 45 116.67 115.84 129.03 107.94 45 46 117.07 118.57 128.76 107.94 46 47 116.92 118.57 128.76 107.94 47 48 117.00 118.86 128.76 107.94 48 49 117.02 118.98 128.76 107.94 49 50 117.35 119.27 128.76 107.94 50 51 117.36 119.39 128.76 107.94 51 52 117.82 119.49 128.76 110.30 52 53 117.88 119.59 128.76 110.30 53 54 118.24 120.12 128.76 110.30 54 55 118.50 120.14 128.76 110.30 55 56 118.80 120.14 128.76 110.30 56 57 119.76 120.14 132.63 110.30 57 58 120.09 120.14 132.63 110.30 58 > k <- length(x[1,]) > df <- as.data.frame(x) > (mylm <- lm(df)) Call: lm(formula = df) Coefficients: (Intercept) Bioscoop Schouwburgabonnement 61.3523 0.1049 0.1673 Daguitstap t 0.1211 0.1788 > (mysum <- summary(mylm)) Call: lm(formula = df) Residuals: Min 1Q Median 3Q Max -0.56488 -0.21654 -0.03583 0.21662 0.69946 Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 61.35230 3.41955 17.942 < 2e-16 *** Bioscoop 0.10486 0.01788 5.866 2.96e-07 *** Schouwburgabonnement 0.16729 0.01892 8.842 5.19e-12 *** Daguitstap 0.12113 0.03164 3.828 0.000343 *** t 0.17877 0.01269 14.086 < 2e-16 *** --- Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 Residual standard error: 0.3004 on 53 degrees of freedom Multiple R-squared: 0.9973, Adjusted R-squared: 0.9971 F-statistic: 4896 on 4 and 53 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,] 1.067715e-03 0.0021354308 0.99893228 [2,] 8.291729e-05 0.0001658346 0.99991708 [3,] 2.025769e-02 0.0405153879 0.97974231 [4,] 1.260243e-02 0.0252048682 0.98739757 [5,] 1.090404e-01 0.2180807661 0.89095962 [6,] 1.726171e-01 0.3452341002 0.82738295 [7,] 1.430867e-01 0.2861733531 0.85691332 [8,] 9.792317e-02 0.1958463321 0.90207683 [9,] 1.387264e-01 0.2774528175 0.86127359 [10,] 9.364010e-02 0.1872802066 0.90635990 [11,] 7.756733e-02 0.1551346527 0.92243267 [12,] 6.762135e-02 0.1352426930 0.93237865 [13,] 1.738073e-01 0.3476146040 0.82619270 [14,] 2.342672e-01 0.4685344705 0.76573276 [15,] 2.217361e-01 0.4434722306 0.77826388 [16,] 2.846294e-01 0.5692587577 0.71537062 [17,] 3.315915e-01 0.6631829908 0.66840850 [18,] 4.147600e-01 0.8295199747 0.58524001 [19,] 5.452794e-01 0.9094411021 0.45472055 [20,] 5.040716e-01 0.9918567453 0.49592837 [21,] 4.246314e-01 0.8492627754 0.57536861 [22,] 3.651124e-01 0.7302247991 0.63488760 [23,] 3.055973e-01 0.6111945190 0.69440274 [24,] 2.655129e-01 0.5310258389 0.73448708 [25,] 2.802944e-01 0.5605887357 0.71970563 [26,] 5.306984e-01 0.9386032828 0.46930164 [27,] 4.528629e-01 0.9057257556 0.54713712 [28,] 4.218340e-01 0.8436679807 0.57816601 [29,] 4.012530e-01 0.8025059039 0.59874705 [30,] 4.492862e-01 0.8985723192 0.55071384 [31,] 3.729235e-01 0.7458470100 0.62707650 [32,] 3.329277e-01 0.6658553360 0.66707233 [33,] 4.039516e-01 0.8079032516 0.59604837 [34,] 8.692097e-01 0.2615806095 0.13079030 [35,] 8.708472e-01 0.2583055910 0.12915280 [36,] 8.881108e-01 0.2237784578 0.11188923 [37,] 8.985371e-01 0.2029257877 0.10146289 [38,] 8.582299e-01 0.2835402236 0.14177011 [39,] 9.683574e-01 0.0632852490 0.03164262 [40,] 9.799182e-01 0.0401636505 0.02008183 [41,] 9.857950e-01 0.0284100308 0.01420502 [42,] 9.629507e-01 0.0740986048 0.03704930 [43,] 9.669439e-01 0.0661122263 0.03305611 > postscript(file="/var/wessaorg/rcomp/tmp/1bpmn1321907889.ps",horizontal=F,onefile=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/wessaorg/rcomp/tmp/26ka91321907889.ps",horizontal=F,onefile=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/wessaorg/rcomp/tmp/3hc9z1321907889.ps",horizontal=F,onefile=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/wessaorg/rcomp/tmp/4znqd1321907889.ps",horizontal=F,onefile=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/wessaorg/rcomp/tmp/5khdp1321907889.ps",horizontal=F,onefile=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 = 58 Frequency = 1 1 2 3 4 5 6 0.253553079 0.699463566 0.530693617 0.448359083 0.279589134 0.150819184 7 8 9 10 11 12 0.002049235 -0.106720715 -0.105450881 -0.211561049 -0.310330998 -0.433704835 13 14 15 16 17 18 -0.214147712 -0.262917662 -0.313631716 -0.217336735 -0.386106685 -0.564876634 19 20 21 22 23 24 -0.559478899 -0.068248848 -0.177467411 -0.302938453 -0.331708402 -0.011859880 25 26 27 28 29 30 0.198766852 0.359996902 0.181226952 -0.022307080 -0.150591003 -0.049360953 31 32 33 34 35 36 0.031869098 0.147446659 0.365377593 0.232156857 0.223769658 0.066610888 37 38 39 40 41 42 -0.092159062 0.188175487 0.139405537 -0.158842445 -0.247612395 0.526430538 43 44 45 46 47 48 0.327660588 0.283081424 0.465599055 0.445729651 0.116959701 -0.012219724 49 50 51 52 53 54 -0.183572905 -0.062752331 -0.244105512 -0.259225628 -0.388481604 -0.262827492 55 56 57 58 -0.183694647 -0.062464596 0.071342253 0.222572303 > postscript(file="/var/wessaorg/rcomp/tmp/6cmnc1321907889.ps",horizontal=F,onefile=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) > dum <- cbind(lag(myerror,k=1),myerror) > dum Time Series: Start = 0 End = 58 Frequency = 1 lag(myerror, k = 1) myerror 0 0.253553079 NA 1 0.699463566 0.253553079 2 0.530693617 0.699463566 3 0.448359083 0.530693617 4 0.279589134 0.448359083 5 0.150819184 0.279589134 6 0.002049235 0.150819184 7 -0.106720715 0.002049235 8 -0.105450881 -0.106720715 9 -0.211561049 -0.105450881 10 -0.310330998 -0.211561049 11 -0.433704835 -0.310330998 12 -0.214147712 -0.433704835 13 -0.262917662 -0.214147712 14 -0.313631716 -0.262917662 15 -0.217336735 -0.313631716 16 -0.386106685 -0.217336735 17 -0.564876634 -0.386106685 18 -0.559478899 -0.564876634 19 -0.068248848 -0.559478899 20 -0.177467411 -0.068248848 21 -0.302938453 -0.177467411 22 -0.331708402 -0.302938453 23 -0.011859880 -0.331708402 24 0.198766852 -0.011859880 25 0.359996902 0.198766852 26 0.181226952 0.359996902 27 -0.022307080 0.181226952 28 -0.150591003 -0.022307080 29 -0.049360953 -0.150591003 30 0.031869098 -0.049360953 31 0.147446659 0.031869098 32 0.365377593 0.147446659 33 0.232156857 0.365377593 34 0.223769658 0.232156857 35 0.066610888 0.223769658 36 -0.092159062 0.066610888 37 0.188175487 -0.092159062 38 0.139405537 0.188175487 39 -0.158842445 0.139405537 40 -0.247612395 -0.158842445 41 0.526430538 -0.247612395 42 0.327660588 0.526430538 43 0.283081424 0.327660588 44 0.465599055 0.283081424 45 0.445729651 0.465599055 46 0.116959701 0.445729651 47 -0.012219724 0.116959701 48 -0.183572905 -0.012219724 49 -0.062752331 -0.183572905 50 -0.244105512 -0.062752331 51 -0.259225628 -0.244105512 52 -0.388481604 -0.259225628 53 -0.262827492 -0.388481604 54 -0.183694647 -0.262827492 55 -0.062464596 -0.183694647 56 0.071342253 -0.062464596 57 0.222572303 0.071342253 58 NA 0.222572303 > dum1 <- dum[2:length(myerror),] > dum1 lag(myerror, k = 1) myerror [1,] 0.699463566 0.253553079 [2,] 0.530693617 0.699463566 [3,] 0.448359083 0.530693617 [4,] 0.279589134 0.448359083 [5,] 0.150819184 0.279589134 [6,] 0.002049235 0.150819184 [7,] -0.106720715 0.002049235 [8,] -0.105450881 -0.106720715 [9,] -0.211561049 -0.105450881 [10,] -0.310330998 -0.211561049 [11,] -0.433704835 -0.310330998 [12,] -0.214147712 -0.433704835 [13,] -0.262917662 -0.214147712 [14,] -0.313631716 -0.262917662 [15,] -0.217336735 -0.313631716 [16,] -0.386106685 -0.217336735 [17,] -0.564876634 -0.386106685 [18,] -0.559478899 -0.564876634 [19,] -0.068248848 -0.559478899 [20,] -0.177467411 -0.068248848 [21,] -0.302938453 -0.177467411 [22,] -0.331708402 -0.302938453 [23,] -0.011859880 -0.331708402 [24,] 0.198766852 -0.011859880 [25,] 0.359996902 0.198766852 [26,] 0.181226952 0.359996902 [27,] -0.022307080 0.181226952 [28,] -0.150591003 -0.022307080 [29,] -0.049360953 -0.150591003 [30,] 0.031869098 -0.049360953 [31,] 0.147446659 0.031869098 [32,] 0.365377593 0.147446659 [33,] 0.232156857 0.365377593 [34,] 0.223769658 0.232156857 [35,] 0.066610888 0.223769658 [36,] -0.092159062 0.066610888 [37,] 0.188175487 -0.092159062 [38,] 0.139405537 0.188175487 [39,] -0.158842445 0.139405537 [40,] -0.247612395 -0.158842445 [41,] 0.526430538 -0.247612395 [42,] 0.327660588 0.526430538 [43,] 0.283081424 0.327660588 [44,] 0.465599055 0.283081424 [45,] 0.445729651 0.465599055 [46,] 0.116959701 0.445729651 [47,] -0.012219724 0.116959701 [48,] -0.183572905 -0.012219724 [49,] -0.062752331 -0.183572905 [50,] -0.244105512 -0.062752331 [51,] -0.259225628 -0.244105512 [52,] -0.388481604 -0.259225628 [53,] -0.262827492 -0.388481604 [54,] -0.183694647 -0.262827492 [55,] -0.062464596 -0.183694647 [56,] 0.071342253 -0.062464596 [57,] 0.222572303 0.071342253 > z <- as.data.frame(dum1) > z lag(myerror, k = 1) myerror 1 0.699463566 0.253553079 2 0.530693617 0.699463566 3 0.448359083 0.530693617 4 0.279589134 0.448359083 5 0.150819184 0.279589134 6 0.002049235 0.150819184 7 -0.106720715 0.002049235 8 -0.105450881 -0.106720715 9 -0.211561049 -0.105450881 10 -0.310330998 -0.211561049 11 -0.433704835 -0.310330998 12 -0.214147712 -0.433704835 13 -0.262917662 -0.214147712 14 -0.313631716 -0.262917662 15 -0.217336735 -0.313631716 16 -0.386106685 -0.217336735 17 -0.564876634 -0.386106685 18 -0.559478899 -0.564876634 19 -0.068248848 -0.559478899 20 -0.177467411 -0.068248848 21 -0.302938453 -0.177467411 22 -0.331708402 -0.302938453 23 -0.011859880 -0.331708402 24 0.198766852 -0.011859880 25 0.359996902 0.198766852 26 0.181226952 0.359996902 27 -0.022307080 0.181226952 28 -0.150591003 -0.022307080 29 -0.049360953 -0.150591003 30 0.031869098 -0.049360953 31 0.147446659 0.031869098 32 0.365377593 0.147446659 33 0.232156857 0.365377593 34 0.223769658 0.232156857 35 0.066610888 0.223769658 36 -0.092159062 0.066610888 37 0.188175487 -0.092159062 38 0.139405537 0.188175487 39 -0.158842445 0.139405537 40 -0.247612395 -0.158842445 41 0.526430538 -0.247612395 42 0.327660588 0.526430538 43 0.283081424 0.327660588 44 0.465599055 0.283081424 45 0.445729651 0.465599055 46 0.116959701 0.445729651 47 -0.012219724 0.116959701 48 -0.183572905 -0.012219724 49 -0.062752331 -0.183572905 50 -0.244105512 -0.062752331 51 -0.259225628 -0.244105512 52 -0.388481604 -0.259225628 53 -0.262827492 -0.388481604 54 -0.183694647 -0.262827492 55 -0.062464596 -0.183694647 56 0.071342253 -0.062464596 57 0.222572303 0.071342253 > 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/wessaorg/rcomp/tmp/7dc6g1321907889.ps",horizontal=F,onefile=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/wessaorg/rcomp/tmp/8l98x1321907889.ps",horizontal=F,onefile=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/wessaorg/rcomp/tmp/9yvk51321907889.ps",horizontal=F,onefile=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/wessaorg/rcomp/tmp/10gufy1321907889.ps",horizontal=F,onefile=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/wessaorg/rcomp/createtable file can be downloaded at http://www.wessa.net/cretab > load(file="/var/wessaorg/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/wessaorg/rcomp/tmp/117ox71321907889.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/wessaorg/rcomp/tmp/12cnkx1321907889.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/wessaorg/rcomp/tmp/134ynh1321907889.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/wessaorg/rcomp/tmp/14kauy1321907889.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/wessaorg/rcomp/tmp/15n1f81321907889.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/wessaorg/rcomp/tmp/16ao591321907889.tab") + } > > try(system("convert tmp/1bpmn1321907889.ps tmp/1bpmn1321907889.png",intern=TRUE)) character(0) > try(system("convert tmp/26ka91321907889.ps tmp/26ka91321907889.png",intern=TRUE)) character(0) > try(system("convert tmp/3hc9z1321907889.ps tmp/3hc9z1321907889.png",intern=TRUE)) character(0) > try(system("convert tmp/4znqd1321907889.ps tmp/4znqd1321907889.png",intern=TRUE)) character(0) > try(system("convert tmp/5khdp1321907889.ps tmp/5khdp1321907889.png",intern=TRUE)) character(0) > try(system("convert tmp/6cmnc1321907889.ps tmp/6cmnc1321907889.png",intern=TRUE)) character(0) > try(system("convert tmp/7dc6g1321907889.ps tmp/7dc6g1321907889.png",intern=TRUE)) character(0) > try(system("convert tmp/8l98x1321907889.ps tmp/8l98x1321907889.png",intern=TRUE)) character(0) > try(system("convert tmp/9yvk51321907889.ps tmp/9yvk51321907889.png",intern=TRUE)) character(0) > try(system("convert tmp/10gufy1321907889.ps tmp/10gufy1321907889.png",intern=TRUE)) character(0) > > > proc.time() user system elapsed 3.268 0.514 3.799