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(21.1,0,21,0,20.4,0,19.5,0,18.6,0,18.8,0,23.7,0,24.8,0,25,0,23.6,0,22.3,0,21.8,0,20.8,0,19.7,0,18.3,0,17.4,0,17,0,18.1,0,23.9,0,25.6,0,25.3,0,23.6,0,21.9,0,21.4,0,20.6,0,20.5,0,20.2,0,20.6,0,19.7,0,19.3,0,22.8,0,23.5,0,23.8,0,22.6,0,22,0,21.7,0,20.7,1,20.2,1,19.1,1,19.5,1,18.7,1,18.6,1,22.2,1,23.2,1,23.5,1,21.3,1,20,1,18.7,1,18.9,1,18.3,1,18.4,1,19.9,1,19.2,1,18.5,1,20.9,1,20.5,1,19.4,1,18.1,1,17,1,17,1),dim=c(2,60),dimnames=list(c('Werkloosheid<25jr','Generatiepact'),1:60)) > y <- array(NA,dim=c(2,60),dimnames=list(c('Werkloosheid<25jr','Generatiepact'),1:60)) > 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 Werkloosheid<25jr Generatiepact M1 M2 M3 M4 M5 M6 M7 M8 M9 M10 M11 t 1 21.1 0 1 0 0 0 0 0 0 0 0 0 0 1 2 21.0 0 0 1 0 0 0 0 0 0 0 0 0 2 3 20.4 0 0 0 1 0 0 0 0 0 0 0 0 3 4 19.5 0 0 0 0 1 0 0 0 0 0 0 0 4 5 18.6 0 0 0 0 0 1 0 0 0 0 0 0 5 6 18.8 0 0 0 0 0 0 1 0 0 0 0 0 6 7 23.7 0 0 0 0 0 0 0 1 0 0 0 0 7 8 24.8 0 0 0 0 0 0 0 0 1 0 0 0 8 9 25.0 0 0 0 0 0 0 0 0 0 1 0 0 9 10 23.6 0 0 0 0 0 0 0 0 0 0 1 0 10 11 22.3 0 0 0 0 0 0 0 0 0 0 0 1 11 12 21.8 0 0 0 0 0 0 0 0 0 0 0 0 12 13 20.8 0 1 0 0 0 0 0 0 0 0 0 0 13 14 19.7 0 0 1 0 0 0 0 0 0 0 0 0 14 15 18.3 0 0 0 1 0 0 0 0 0 0 0 0 15 16 17.4 0 0 0 0 1 0 0 0 0 0 0 0 16 17 17.0 0 0 0 0 0 1 0 0 0 0 0 0 17 18 18.1 0 0 0 0 0 0 1 0 0 0 0 0 18 19 23.9 0 0 0 0 0 0 0 1 0 0 0 0 19 20 25.6 0 0 0 0 0 0 0 0 1 0 0 0 20 21 25.3 0 0 0 0 0 0 0 0 0 1 0 0 21 22 23.6 0 0 0 0 0 0 0 0 0 0 1 0 22 23 21.9 0 0 0 0 0 0 0 0 0 0 0 1 23 24 21.4 0 0 0 0 0 0 0 0 0 0 0 0 24 25 20.6 0 1 0 0 0 0 0 0 0 0 0 0 25 26 20.5 0 0 1 0 0 0 0 0 0 0 0 0 26 27 20.2 0 0 0 1 0 0 0 0 0 0 0 0 27 28 20.6 0 0 0 0 1 0 0 0 0 0 0 0 28 29 19.7 0 0 0 0 0 1 0 0 0 0 0 0 29 30 19.3 0 0 0 0 0 0 1 0 0 0 0 0 30 31 22.8 0 0 0 0 0 0 0 1 0 0 0 0 31 32 23.5 0 0 0 0 0 0 0 0 1 0 0 0 32 33 23.8 0 0 0 0 0 0 0 0 0 1 0 0 33 34 22.6 0 0 0 0 0 0 0 0 0 0 1 0 34 35 22.0 0 0 0 0 0 0 0 0 0 0 0 1 35 36 21.7 0 0 0 0 0 0 0 0 0 0 0 0 36 37 20.7 1 1 0 0 0 0 0 0 0 0 0 0 37 38 20.2 1 0 1 0 0 0 0 0 0 0 0 0 38 39 19.1 1 0 0 1 0 0 0 0 0 0 0 0 39 40 19.5 1 0 0 0 1 0 0 0 0 0 0 0 40 41 18.7 1 0 0 0 0 1 0 0 0 0 0 0 41 42 18.6 1 0 0 0 0 0 1 0 0 0 0 0 42 43 22.2 1 0 0 0 0 0 0 1 0 0 0 0 43 44 23.2 1 0 0 0 0 0 0 0 1 0 0 0 44 45 23.5 1 0 0 0 0 0 0 0 0 1 0 0 45 46 21.3 1 0 0 0 0 0 0 0 0 0 1 0 46 47 20.0 1 0 0 0 0 0 0 0 0 0 0 1 47 48 18.7 1 0 0 0 0 0 0 0 0 0 0 0 48 49 18.9 1 1 0 0 0 0 0 0 0 0 0 0 49 50 18.3 1 0 1 0 0 0 0 0 0 0 0 0 50 51 18.4 1 0 0 1 0 0 0 0 0 0 0 0 51 52 19.9 1 0 0 0 1 0 0 0 0 0 0 0 52 53 19.2 1 0 0 0 0 1 0 0 0 0 0 0 53 54 18.5 1 0 0 0 0 0 1 0 0 0 0 0 54 55 20.9 1 0 0 0 0 0 0 1 0 0 0 0 55 56 20.5 1 0 0 0 0 0 0 0 1 0 0 0 56 57 19.4 1 0 0 0 0 0 0 0 0 1 0 0 57 58 18.1 1 0 0 0 0 0 0 0 0 0 1 0 58 59 17.0 1 0 0 0 0 0 0 0 0 0 0 1 59 60 17.0 1 0 0 0 0 0 0 0 0 0 0 0 60 > k <- length(x[1,]) > df <- as.data.frame(x) > (mylm <- lm(df)) Call: lm(formula = df) Coefficients: (Intercept) Generatiepact M1 M2 M3 21.69556 -0.66389 -0.10028 -0.54389 -1.16750 M4 M5 M6 M7 M8 -1.03111 -1.73472 -1.67833 2.39806 3.25444 M9 M10 M11 t 3.17083 1.64722 0.48361 -0.03639 > (mysum <- summary(mylm)) Call: lm(formula = df) Residuals: Min 1Q Median 3Q Max -2.7283 -0.4763 0.3150 0.7799 1.8317 Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 21.69556 0.74809 29.001 < 2e-16 *** Generatiepact -0.66389 0.67181 -0.988 0.328217 M1 -0.10028 0.83392 -0.120 0.904809 M2 -0.54389 0.82917 -0.656 0.515126 M3 -1.16750 0.82485 -1.415 0.163682 M4 -1.03111 0.82096 -1.256 0.215465 M5 -1.73472 0.81752 -2.122 0.039260 * M6 -1.67833 0.81452 -2.061 0.045031 * M7 2.39806 0.81198 2.953 0.004938 ** M8 3.25444 0.80989 4.018 0.000215 *** M9 3.17083 0.80826 3.923 0.000290 *** M10 1.64722 0.80710 2.041 0.047022 * M11 0.48361 0.80640 0.600 0.551639 t -0.03639 0.01939 -1.876 0.066959 . --- Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 Residual standard error: 1.275 on 46 degrees of freedom Multiple R-squared: 0.7452, Adjusted R-squared: 0.6732 F-statistic: 10.35 on 13 and 46 DF, p-value: 1.038e-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.21506188 0.4301238 0.7849381 [2,] 0.21728605 0.4345721 0.7827139 [3,] 0.30175202 0.6035040 0.6982480 [4,] 0.43462339 0.8692468 0.5653766 [5,] 0.39266292 0.7853258 0.6073371 [6,] 0.30836333 0.6167267 0.6916367 [7,] 0.21764506 0.4352901 0.7823549 [8,] 0.14682375 0.2936475 0.8531763 [9,] 0.11196128 0.2239226 0.8880387 [10,] 0.09648467 0.1929693 0.9035153 [11,] 0.11738396 0.2347679 0.8826160 [12,] 0.29836620 0.5967324 0.7016338 [13,] 0.40394791 0.8078958 0.5960521 [14,] 0.41311366 0.8262273 0.5868863 [15,] 0.43326119 0.8665224 0.5667388 [16,] 0.49725554 0.9945111 0.5027445 [17,] 0.47452637 0.9490527 0.5254736 [18,] 0.40586479 0.8117296 0.5941352 [19,] 0.30971377 0.6194275 0.6902862 [20,] 0.22366860 0.4473372 0.7763314 [21,] 0.15087480 0.3017496 0.8491252 [22,] 0.09560438 0.1912088 0.9043956 [23,] 0.06435239 0.1287048 0.9356476 [24,] 0.08649535 0.1729907 0.9135047 [25,] 0.19253203 0.3850641 0.8074680 [26,] 0.42278031 0.8455606 0.5772197 [27,] 0.52809814 0.9438037 0.4719019 > postscript(file="/var/www/html/rcomp/tmp/15con1227442634.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/25xd91227442634.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/3bvyh1227442634.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/4s7p31227442634.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/52sy91227442634.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 = 60 Frequency = 1 1 2 3 4 5 6 -0.45888889 -0.07888889 -0.01888889 -1.01888889 -1.17888889 -0.99888889 7 8 9 10 11 12 -0.13888889 0.14111111 0.46111111 0.62111111 0.52111111 0.54111111 13 14 15 16 17 18 -0.32222222 -0.94222222 -1.68222222 -2.68222222 -2.34222222 -1.26222222 19 20 21 22 23 24 0.49777778 1.37777778 1.19777778 1.05777778 0.55777778 0.57777778 25 26 27 28 29 30 -0.08555556 0.29444444 0.65444444 0.95444444 0.79444444 0.37444444 31 32 33 34 35 36 -0.16555556 -0.28555556 0.13444444 0.49444444 1.09444444 1.31444444 37 38 39 40 41 42 1.11500000 1.09500000 0.65500000 0.95500000 0.89500000 0.77500000 43 44 45 46 47 48 0.33500000 0.51500000 0.93500000 0.29500000 0.19500000 -0.58500000 49 50 51 52 53 54 -0.24833333 -0.36833333 0.39166667 1.79166667 1.83166667 1.11166667 55 56 57 58 59 60 -0.52833333 -1.74833333 -2.72833333 -2.46833333 -2.36833333 -1.84833333 > postscript(file="/var/www/html/rcomp/tmp/6vldv1227442634.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 = 60 Frequency = 1 lag(myerror, k = 1) myerror 0 -0.45888889 NA 1 -0.07888889 -0.45888889 2 -0.01888889 -0.07888889 3 -1.01888889 -0.01888889 4 -1.17888889 -1.01888889 5 -0.99888889 -1.17888889 6 -0.13888889 -0.99888889 7 0.14111111 -0.13888889 8 0.46111111 0.14111111 9 0.62111111 0.46111111 10 0.52111111 0.62111111 11 0.54111111 0.52111111 12 -0.32222222 0.54111111 13 -0.94222222 -0.32222222 14 -1.68222222 -0.94222222 15 -2.68222222 -1.68222222 16 -2.34222222 -2.68222222 17 -1.26222222 -2.34222222 18 0.49777778 -1.26222222 19 1.37777778 0.49777778 20 1.19777778 1.37777778 21 1.05777778 1.19777778 22 0.55777778 1.05777778 23 0.57777778 0.55777778 24 -0.08555556 0.57777778 25 0.29444444 -0.08555556 26 0.65444444 0.29444444 27 0.95444444 0.65444444 28 0.79444444 0.95444444 29 0.37444444 0.79444444 30 -0.16555556 0.37444444 31 -0.28555556 -0.16555556 32 0.13444444 -0.28555556 33 0.49444444 0.13444444 34 1.09444444 0.49444444 35 1.31444444 1.09444444 36 1.11500000 1.31444444 37 1.09500000 1.11500000 38 0.65500000 1.09500000 39 0.95500000 0.65500000 40 0.89500000 0.95500000 41 0.77500000 0.89500000 42 0.33500000 0.77500000 43 0.51500000 0.33500000 44 0.93500000 0.51500000 45 0.29500000 0.93500000 46 0.19500000 0.29500000 47 -0.58500000 0.19500000 48 -0.24833333 -0.58500000 49 -0.36833333 -0.24833333 50 0.39166667 -0.36833333 51 1.79166667 0.39166667 52 1.83166667 1.79166667 53 1.11166667 1.83166667 54 -0.52833333 1.11166667 55 -1.74833333 -0.52833333 56 -2.72833333 -1.74833333 57 -2.46833333 -2.72833333 58 -2.36833333 -2.46833333 59 -1.84833333 -2.36833333 60 NA -1.84833333 > dum1 <- dum[2:length(myerror),] > dum1 lag(myerror, k = 1) myerror [1,] -0.07888889 -0.45888889 [2,] -0.01888889 -0.07888889 [3,] -1.01888889 -0.01888889 [4,] -1.17888889 -1.01888889 [5,] -0.99888889 -1.17888889 [6,] -0.13888889 -0.99888889 [7,] 0.14111111 -0.13888889 [8,] 0.46111111 0.14111111 [9,] 0.62111111 0.46111111 [10,] 0.52111111 0.62111111 [11,] 0.54111111 0.52111111 [12,] -0.32222222 0.54111111 [13,] -0.94222222 -0.32222222 [14,] -1.68222222 -0.94222222 [15,] -2.68222222 -1.68222222 [16,] -2.34222222 -2.68222222 [17,] -1.26222222 -2.34222222 [18,] 0.49777778 -1.26222222 [19,] 1.37777778 0.49777778 [20,] 1.19777778 1.37777778 [21,] 1.05777778 1.19777778 [22,] 0.55777778 1.05777778 [23,] 0.57777778 0.55777778 [24,] -0.08555556 0.57777778 [25,] 0.29444444 -0.08555556 [26,] 0.65444444 0.29444444 [27,] 0.95444444 0.65444444 [28,] 0.79444444 0.95444444 [29,] 0.37444444 0.79444444 [30,] -0.16555556 0.37444444 [31,] -0.28555556 -0.16555556 [32,] 0.13444444 -0.28555556 [33,] 0.49444444 0.13444444 [34,] 1.09444444 0.49444444 [35,] 1.31444444 1.09444444 [36,] 1.11500000 1.31444444 [37,] 1.09500000 1.11500000 [38,] 0.65500000 1.09500000 [39,] 0.95500000 0.65500000 [40,] 0.89500000 0.95500000 [41,] 0.77500000 0.89500000 [42,] 0.33500000 0.77500000 [43,] 0.51500000 0.33500000 [44,] 0.93500000 0.51500000 [45,] 0.29500000 0.93500000 [46,] 0.19500000 0.29500000 [47,] -0.58500000 0.19500000 [48,] -0.24833333 -0.58500000 [49,] -0.36833333 -0.24833333 [50,] 0.39166667 -0.36833333 [51,] 1.79166667 0.39166667 [52,] 1.83166667 1.79166667 [53,] 1.11166667 1.83166667 [54,] -0.52833333 1.11166667 [55,] -1.74833333 -0.52833333 [56,] -2.72833333 -1.74833333 [57,] -2.46833333 -2.72833333 [58,] -2.36833333 -2.46833333 [59,] -1.84833333 -2.36833333 > z <- as.data.frame(dum1) > z lag(myerror, k = 1) myerror 1 -0.07888889 -0.45888889 2 -0.01888889 -0.07888889 3 -1.01888889 -0.01888889 4 -1.17888889 -1.01888889 5 -0.99888889 -1.17888889 6 -0.13888889 -0.99888889 7 0.14111111 -0.13888889 8 0.46111111 0.14111111 9 0.62111111 0.46111111 10 0.52111111 0.62111111 11 0.54111111 0.52111111 12 -0.32222222 0.54111111 13 -0.94222222 -0.32222222 14 -1.68222222 -0.94222222 15 -2.68222222 -1.68222222 16 -2.34222222 -2.68222222 17 -1.26222222 -2.34222222 18 0.49777778 -1.26222222 19 1.37777778 0.49777778 20 1.19777778 1.37777778 21 1.05777778 1.19777778 22 0.55777778 1.05777778 23 0.57777778 0.55777778 24 -0.08555556 0.57777778 25 0.29444444 -0.08555556 26 0.65444444 0.29444444 27 0.95444444 0.65444444 28 0.79444444 0.95444444 29 0.37444444 0.79444444 30 -0.16555556 0.37444444 31 -0.28555556 -0.16555556 32 0.13444444 -0.28555556 33 0.49444444 0.13444444 34 1.09444444 0.49444444 35 1.31444444 1.09444444 36 1.11500000 1.31444444 37 1.09500000 1.11500000 38 0.65500000 1.09500000 39 0.95500000 0.65500000 40 0.89500000 0.95500000 41 0.77500000 0.89500000 42 0.33500000 0.77500000 43 0.51500000 0.33500000 44 0.93500000 0.51500000 45 0.29500000 0.93500000 46 0.19500000 0.29500000 47 -0.58500000 0.19500000 48 -0.24833333 -0.58500000 49 -0.36833333 -0.24833333 50 0.39166667 -0.36833333 51 1.79166667 0.39166667 52 1.83166667 1.79166667 53 1.11166667 1.83166667 54 -0.52833333 1.11166667 55 -1.74833333 -0.52833333 56 -2.72833333 -1.74833333 57 -2.46833333 -2.72833333 58 -2.36833333 -2.46833333 59 -1.84833333 -2.36833333 > 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/7lmq11227442634.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/8bwip1227442634.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/91aoz1227442634.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/10kxa01227442634.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/110gw91227442634.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/1221hp1227442634.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/13fk4d1227442634.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/14urr21227442634.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/152rgs1227442635.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/1611d61227442635.tab") + } > > system("convert tmp/15con1227442634.ps tmp/15con1227442634.png") > system("convert tmp/25xd91227442634.ps tmp/25xd91227442634.png") > system("convert tmp/3bvyh1227442634.ps tmp/3bvyh1227442634.png") > system("convert tmp/4s7p31227442634.ps tmp/4s7p31227442634.png") > system("convert tmp/52sy91227442634.ps tmp/52sy91227442634.png") > system("convert tmp/6vldv1227442634.ps tmp/6vldv1227442634.png") > system("convert tmp/7lmq11227442634.ps tmp/7lmq11227442634.png") > system("convert tmp/8bwip1227442634.ps tmp/8bwip1227442634.png") > system("convert tmp/91aoz1227442634.ps tmp/91aoz1227442634.png") > system("convert tmp/10kxa01227442634.ps tmp/10kxa01227442634.png") > > > proc.time() user system elapsed 2.348 1.535 2.961