R version 2.9.0 (2009-04-17) Copyright (C) 2009 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(8.9,1.9,9,1.6,9,1.7,9,2,9,2.5,9,2.4,9,2.3,9,2.3,9,2.1,9,2.4,9,2.2,9.1,2.4,9,1.9,9,2.1,9.1,2.1,9,2.1,9,2,9,2.1,9,2.2,8.9,2.2,8.9,2.6,8.9,2.5,8.9,2.3,8.8,2.2,8.8,2.4,8.7,2.3,8.7,2.2,8.5,2.5,8.5,2.5,8.4,2.5,8.2,2.4,8.2,2.3,8.1,1.7,8.1,1.6,8,1.9,7.9,1.9,7.8,1.8,7.7,1.8,7.6,1.9,7.5,1.9,7.5,1.9,7.5,1.9,7.5,1.8,7.5,1.7,7.4,2.1,7.4,2.6,7.3,3.1,7.3,3.1,7.3,3.2,7.2,3.3,7.2,3.6,7.3,3.3,7.4,3.7,7.4,4,7.5,4,7.6,3.8,7.7,3.6,7.9,3.2,8,2.1,8.2,1.6),dim=c(2,60),dimnames=list(c('werkl','infl'),1:60)) > y <- array(NA,dim=c(2,60),dimnames=list(c('werkl','infl'),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 = 'No 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 werkl infl M1 M2 M3 M4 M5 M6 M7 M8 M9 M10 M11 1 8.9 1.9 1 0 0 0 0 0 0 0 0 0 0 2 9.0 1.6 0 1 0 0 0 0 0 0 0 0 0 3 9.0 1.7 0 0 1 0 0 0 0 0 0 0 0 4 9.0 2.0 0 0 0 1 0 0 0 0 0 0 0 5 9.0 2.5 0 0 0 0 1 0 0 0 0 0 0 6 9.0 2.4 0 0 0 0 0 1 0 0 0 0 0 7 9.0 2.3 0 0 0 0 0 0 1 0 0 0 0 8 9.0 2.3 0 0 0 0 0 0 0 1 0 0 0 9 9.0 2.1 0 0 0 0 0 0 0 0 1 0 0 10 9.0 2.4 0 0 0 0 0 0 0 0 0 1 0 11 9.0 2.2 0 0 0 0 0 0 0 0 0 0 1 12 9.1 2.4 0 0 0 0 0 0 0 0 0 0 0 13 9.0 1.9 1 0 0 0 0 0 0 0 0 0 0 14 9.0 2.1 0 1 0 0 0 0 0 0 0 0 0 15 9.1 2.1 0 0 1 0 0 0 0 0 0 0 0 16 9.0 2.1 0 0 0 1 0 0 0 0 0 0 0 17 9.0 2.0 0 0 0 0 1 0 0 0 0 0 0 18 9.0 2.1 0 0 0 0 0 1 0 0 0 0 0 19 9.0 2.2 0 0 0 0 0 0 1 0 0 0 0 20 8.9 2.2 0 0 0 0 0 0 0 1 0 0 0 21 8.9 2.6 0 0 0 0 0 0 0 0 1 0 0 22 8.9 2.5 0 0 0 0 0 0 0 0 0 1 0 23 8.9 2.3 0 0 0 0 0 0 0 0 0 0 1 24 8.8 2.2 0 0 0 0 0 0 0 0 0 0 0 25 8.8 2.4 1 0 0 0 0 0 0 0 0 0 0 26 8.7 2.3 0 1 0 0 0 0 0 0 0 0 0 27 8.7 2.2 0 0 1 0 0 0 0 0 0 0 0 28 8.5 2.5 0 0 0 1 0 0 0 0 0 0 0 29 8.5 2.5 0 0 0 0 1 0 0 0 0 0 0 30 8.4 2.5 0 0 0 0 0 1 0 0 0 0 0 31 8.2 2.4 0 0 0 0 0 0 1 0 0 0 0 32 8.2 2.3 0 0 0 0 0 0 0 1 0 0 0 33 8.1 1.7 0 0 0 0 0 0 0 0 1 0 0 34 8.1 1.6 0 0 0 0 0 0 0 0 0 1 0 35 8.0 1.9 0 0 0 0 0 0 0 0 0 0 1 36 7.9 1.9 0 0 0 0 0 0 0 0 0 0 0 37 7.8 1.8 1 0 0 0 0 0 0 0 0 0 0 38 7.7 1.8 0 1 0 0 0 0 0 0 0 0 0 39 7.6 1.9 0 0 1 0 0 0 0 0 0 0 0 40 7.5 1.9 0 0 0 1 0 0 0 0 0 0 0 41 7.5 1.9 0 0 0 0 1 0 0 0 0 0 0 42 7.5 1.9 0 0 0 0 0 1 0 0 0 0 0 43 7.5 1.8 0 0 0 0 0 0 1 0 0 0 0 44 7.5 1.7 0 0 0 0 0 0 0 1 0 0 0 45 7.4 2.1 0 0 0 0 0 0 0 0 1 0 0 46 7.4 2.6 0 0 0 0 0 0 0 0 0 1 0 47 7.3 3.1 0 0 0 0 0 0 0 0 0 0 1 48 7.3 3.1 0 0 0 0 0 0 0 0 0 0 0 49 7.3 3.2 1 0 0 0 0 0 0 0 0 0 0 50 7.2 3.3 0 1 0 0 0 0 0 0 0 0 0 51 7.2 3.6 0 0 1 0 0 0 0 0 0 0 0 52 7.3 3.3 0 0 0 1 0 0 0 0 0 0 0 53 7.4 3.7 0 0 0 0 1 0 0 0 0 0 0 54 7.4 4.0 0 0 0 0 0 1 0 0 0 0 0 55 7.5 4.0 0 0 0 0 0 0 1 0 0 0 0 56 7.6 3.8 0 0 0 0 0 0 0 1 0 0 0 57 7.7 3.6 0 0 0 0 0 0 0 0 1 0 0 58 7.9 3.2 0 0 0 0 0 0 0 0 0 1 0 59 8.0 2.1 0 0 0 0 0 0 0 0 0 0 1 60 8.2 1.6 0 0 0 0 0 0 0 0 0 0 0 > k <- length(x[1,]) > df <- as.data.frame(x) > (mylm <- lm(df)) Call: lm(formula = df) Coefficients: (Intercept) infl M1 M2 M3 M4 9.34448 -0.48414 0.10000 0.05032 0.08905 0.05810 M5 M6 M7 M8 M9 M10 0.15556 0.16461 0.12524 0.08651 0.04715 0.10651 M11 0.01873 > (mysum <- summary(mylm)) Call: lm(formula = df) Residuals: Min 1Q Median 3Q Max -1.10795 -0.52937 0.07628 0.57313 0.91746 Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 9.34448 0.45011 20.760 < 2e-16 *** infl -0.48414 0.14597 -3.317 0.00176 ** M1 0.10000 0.43745 0.229 0.82017 M2 0.05032 0.43746 0.115 0.90892 M3 0.08905 0.43754 0.204 0.83961 M4 0.05810 0.43780 0.133 0.89500 M5 0.15556 0.43936 0.354 0.72488 M6 0.16461 0.44026 0.374 0.71017 M7 0.12524 0.43964 0.285 0.77699 M8 0.08651 0.43863 0.197 0.84450 M9 0.04715 0.43824 0.108 0.91479 M10 0.10651 0.43863 0.243 0.80920 M11 0.01873 0.43761 0.043 0.96604 --- Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 Residual standard error: 0.6917 on 47 degrees of freedom Multiple R-squared: 0.1924, Adjusted R-squared: -0.01381 F-statistic: 0.933 on 12 and 47 DF, p-value: 0.5231 > 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,] 6.979900e-04 1.395980e-03 0.99930201 [2,] 5.785643e-05 1.157129e-04 0.99994214 [3,] 4.239151e-06 8.478302e-06 0.99999576 [4,] 3.081907e-07 6.163814e-07 0.99999969 [5,] 8.795204e-08 1.759041e-07 0.99999991 [6,] 4.273694e-08 8.547388e-08 0.99999996 [7,] 1.401847e-08 2.803694e-08 0.99999999 [8,] 5.149199e-09 1.029840e-08 0.99999999 [9,] 1.162469e-07 2.324937e-07 0.99999988 [10,] 1.231304e-07 2.462607e-07 0.99999988 [11,] 7.728380e-07 1.545676e-06 0.99999923 [12,] 7.198395e-06 1.439679e-05 0.99999280 [13,] 1.214038e-04 2.428077e-04 0.99987860 [14,] 1.586874e-03 3.173749e-03 0.99841313 [15,] 1.812160e-02 3.624320e-02 0.98187840 [16,] 1.448984e-01 2.897968e-01 0.85510159 [17,] 3.845416e-01 7.690833e-01 0.61545837 [18,] 7.208263e-01 5.583474e-01 0.27917370 [19,] 7.998586e-01 4.002828e-01 0.20014141 [20,] 8.437290e-01 3.125421e-01 0.15627104 [21,] 8.545084e-01 2.909832e-01 0.14549160 [22,] 8.831221e-01 2.337558e-01 0.11687789 [23,] 9.046815e-01 1.906370e-01 0.09531852 [24,] 9.139927e-01 1.720147e-01 0.08600734 [25,] 8.919796e-01 2.160408e-01 0.10802040 [26,] 8.438831e-01 3.122337e-01 0.15611685 [27,] 7.660153e-01 4.679693e-01 0.23398466 [28,] 6.542188e-01 6.915624e-01 0.34578118 [29,] 5.429558e-01 9.140883e-01 0.45704416 > postscript(file="/var/www/html/rcomp/tmp/10umx1259344485.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/2aa3f1259344485.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/3l1rn1259344485.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/4kh3m1259344485.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/5pxmd1259344485.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.375391056 0.379830750 0.389513629 0.565708177 0.710317121 0.652854089 7 8 9 10 11 12 0.643805452 0.682536968 0.625073936 0.710951363 0.701902726 0.917463032 13 14 15 16 17 18 0.475391056 0.621902726 0.683171210 0.614122573 0.468245145 0.507610903 19 20 21 22 23 24 0.595391056 0.534122573 0.767145911 0.659365758 0.650317121 0.520634242 25 26 27 28 29 30 0.517463032 0.418731516 0.331585605 0.307780153 0.210317121 0.101268484 31 32 33 34 35 36 -0.107780153 -0.117463032 -0.468583645 -0.576363798 -0.443340460 -0.524608944 37 38 39 40 41 42 -0.773023339 -0.823340460 -0.913657581 -0.982706218 -1.080169250 -1.089217887 43 44 45 46 47 48 -1.098266524 -1.107949403 -0.974926064 -0.792219847 -0.562367718 -0.543636202 49 50 51 52 53 54 -0.595221807 -0.597124532 -0.490612863 -0.504904686 -0.308710137 -0.172515589 55 56 57 58 59 60 -0.033149831 0.008752895 0.051289863 -0.001733476 -0.346511669 -0.369852129 > postscript(file="/var/www/html/rcomp/tmp/6ns871259344485.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.375391056 NA 1 0.379830750 0.375391056 2 0.389513629 0.379830750 3 0.565708177 0.389513629 4 0.710317121 0.565708177 5 0.652854089 0.710317121 6 0.643805452 0.652854089 7 0.682536968 0.643805452 8 0.625073936 0.682536968 9 0.710951363 0.625073936 10 0.701902726 0.710951363 11 0.917463032 0.701902726 12 0.475391056 0.917463032 13 0.621902726 0.475391056 14 0.683171210 0.621902726 15 0.614122573 0.683171210 16 0.468245145 0.614122573 17 0.507610903 0.468245145 18 0.595391056 0.507610903 19 0.534122573 0.595391056 20 0.767145911 0.534122573 21 0.659365758 0.767145911 22 0.650317121 0.659365758 23 0.520634242 0.650317121 24 0.517463032 0.520634242 25 0.418731516 0.517463032 26 0.331585605 0.418731516 27 0.307780153 0.331585605 28 0.210317121 0.307780153 29 0.101268484 0.210317121 30 -0.107780153 0.101268484 31 -0.117463032 -0.107780153 32 -0.468583645 -0.117463032 33 -0.576363798 -0.468583645 34 -0.443340460 -0.576363798 35 -0.524608944 -0.443340460 36 -0.773023339 -0.524608944 37 -0.823340460 -0.773023339 38 -0.913657581 -0.823340460 39 -0.982706218 -0.913657581 40 -1.080169250 -0.982706218 41 -1.089217887 -1.080169250 42 -1.098266524 -1.089217887 43 -1.107949403 -1.098266524 44 -0.974926064 -1.107949403 45 -0.792219847 -0.974926064 46 -0.562367718 -0.792219847 47 -0.543636202 -0.562367718 48 -0.595221807 -0.543636202 49 -0.597124532 -0.595221807 50 -0.490612863 -0.597124532 51 -0.504904686 -0.490612863 52 -0.308710137 -0.504904686 53 -0.172515589 -0.308710137 54 -0.033149831 -0.172515589 55 0.008752895 -0.033149831 56 0.051289863 0.008752895 57 -0.001733476 0.051289863 58 -0.346511669 -0.001733476 59 -0.369852129 -0.346511669 60 NA -0.369852129 > dum1 <- dum[2:length(myerror),] > dum1 lag(myerror, k = 1) myerror [1,] 0.379830750 0.375391056 [2,] 0.389513629 0.379830750 [3,] 0.565708177 0.389513629 [4,] 0.710317121 0.565708177 [5,] 0.652854089 0.710317121 [6,] 0.643805452 0.652854089 [7,] 0.682536968 0.643805452 [8,] 0.625073936 0.682536968 [9,] 0.710951363 0.625073936 [10,] 0.701902726 0.710951363 [11,] 0.917463032 0.701902726 [12,] 0.475391056 0.917463032 [13,] 0.621902726 0.475391056 [14,] 0.683171210 0.621902726 [15,] 0.614122573 0.683171210 [16,] 0.468245145 0.614122573 [17,] 0.507610903 0.468245145 [18,] 0.595391056 0.507610903 [19,] 0.534122573 0.595391056 [20,] 0.767145911 0.534122573 [21,] 0.659365758 0.767145911 [22,] 0.650317121 0.659365758 [23,] 0.520634242 0.650317121 [24,] 0.517463032 0.520634242 [25,] 0.418731516 0.517463032 [26,] 0.331585605 0.418731516 [27,] 0.307780153 0.331585605 [28,] 0.210317121 0.307780153 [29,] 0.101268484 0.210317121 [30,] -0.107780153 0.101268484 [31,] -0.117463032 -0.107780153 [32,] -0.468583645 -0.117463032 [33,] -0.576363798 -0.468583645 [34,] -0.443340460 -0.576363798 [35,] -0.524608944 -0.443340460 [36,] -0.773023339 -0.524608944 [37,] -0.823340460 -0.773023339 [38,] -0.913657581 -0.823340460 [39,] -0.982706218 -0.913657581 [40,] -1.080169250 -0.982706218 [41,] -1.089217887 -1.080169250 [42,] -1.098266524 -1.089217887 [43,] -1.107949403 -1.098266524 [44,] -0.974926064 -1.107949403 [45,] -0.792219847 -0.974926064 [46,] -0.562367718 -0.792219847 [47,] -0.543636202 -0.562367718 [48,] -0.595221807 -0.543636202 [49,] -0.597124532 -0.595221807 [50,] -0.490612863 -0.597124532 [51,] -0.504904686 -0.490612863 [52,] -0.308710137 -0.504904686 [53,] -0.172515589 -0.308710137 [54,] -0.033149831 -0.172515589 [55,] 0.008752895 -0.033149831 [56,] 0.051289863 0.008752895 [57,] -0.001733476 0.051289863 [58,] -0.346511669 -0.001733476 [59,] -0.369852129 -0.346511669 > z <- as.data.frame(dum1) > z lag(myerror, k = 1) myerror 1 0.379830750 0.375391056 2 0.389513629 0.379830750 3 0.565708177 0.389513629 4 0.710317121 0.565708177 5 0.652854089 0.710317121 6 0.643805452 0.652854089 7 0.682536968 0.643805452 8 0.625073936 0.682536968 9 0.710951363 0.625073936 10 0.701902726 0.710951363 11 0.917463032 0.701902726 12 0.475391056 0.917463032 13 0.621902726 0.475391056 14 0.683171210 0.621902726 15 0.614122573 0.683171210 16 0.468245145 0.614122573 17 0.507610903 0.468245145 18 0.595391056 0.507610903 19 0.534122573 0.595391056 20 0.767145911 0.534122573 21 0.659365758 0.767145911 22 0.650317121 0.659365758 23 0.520634242 0.650317121 24 0.517463032 0.520634242 25 0.418731516 0.517463032 26 0.331585605 0.418731516 27 0.307780153 0.331585605 28 0.210317121 0.307780153 29 0.101268484 0.210317121 30 -0.107780153 0.101268484 31 -0.117463032 -0.107780153 32 -0.468583645 -0.117463032 33 -0.576363798 -0.468583645 34 -0.443340460 -0.576363798 35 -0.524608944 -0.443340460 36 -0.773023339 -0.524608944 37 -0.823340460 -0.773023339 38 -0.913657581 -0.823340460 39 -0.982706218 -0.913657581 40 -1.080169250 -0.982706218 41 -1.089217887 -1.080169250 42 -1.098266524 -1.089217887 43 -1.107949403 -1.098266524 44 -0.974926064 -1.107949403 45 -0.792219847 -0.974926064 46 -0.562367718 -0.792219847 47 -0.543636202 -0.562367718 48 -0.595221807 -0.543636202 49 -0.597124532 -0.595221807 50 -0.490612863 -0.597124532 51 -0.504904686 -0.490612863 52 -0.308710137 -0.504904686 53 -0.172515589 -0.308710137 54 -0.033149831 -0.172515589 55 0.008752895 -0.033149831 56 0.051289863 0.008752895 57 -0.001733476 0.051289863 58 -0.346511669 -0.001733476 59 -0.369852129 -0.346511669 > 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/77nj21259344485.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/8904o1259344485.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/9fcyy1259344485.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/10on7n1259344485.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/11jv951259344485.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/12oist1259344485.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/13zeo31259344485.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/14hlta1259344485.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/1546cb1259344485.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/16hi001259344485.tab") + } > > system("convert tmp/10umx1259344485.ps tmp/10umx1259344485.png") > system("convert tmp/2aa3f1259344485.ps tmp/2aa3f1259344485.png") > system("convert tmp/3l1rn1259344485.ps tmp/3l1rn1259344485.png") > system("convert tmp/4kh3m1259344485.ps tmp/4kh3m1259344485.png") > system("convert tmp/5pxmd1259344485.ps tmp/5pxmd1259344485.png") > system("convert tmp/6ns871259344485.ps tmp/6ns871259344485.png") > system("convert tmp/77nj21259344485.ps tmp/77nj21259344485.png") > system("convert tmp/8904o1259344485.ps tmp/8904o1259344485.png") > system("convert tmp/9fcyy1259344485.ps tmp/9fcyy1259344485.png") > system("convert tmp/10on7n1259344485.ps tmp/10on7n1259344485.png") > > > proc.time() user system elapsed 2.421 1.596 4.024