Send output to:
Browser Blue - Charts White
Browser Black/White
CSV
Data X:
24 14 11 12 24 26 237.588 25 11 7 8 25 23 164.083 17 6 17 8 30 25 278.261 18 12 10 8 19 23 220.36 18 8 12 9 22 19 253.967 16 10 12 7 22 29 422.31 20 10 11 4 25 25 136.921 16 11 11 11 23 21 143.495 18 16 12 7 17 22 189.785 17 11 13 7 21 25 219.529 23 13 14 12 19 24 217.761 30 12 16 10 19 18 221.754 23 8 11 10 15 22 159.854 18 12 10 8 16 15 209.464 15 11 11 8 23 22 174.283 12 4 15 4 27 28 154.55 21 9 9 9 22 20 153.024 15 8 11 8 14 12 162.49 20 8 17 7 22 24 154.462 31 14 17 11 23 20 249.671 27 15 11 9 23 21 259.473 34 16 18 11 21 20 155.337 21 9 14 13 19 21 151.289 31 14 10 8 18 23 276.614 19 11 11 8 20 28 188.214 16 8 15 9 23 24 181.098 20 9 15 6 25 24 240.898 21 9 13 9 19 24 244.551 22 9 16 9 24 23 250.238 17 9 13 6 22 23 183.129 24 10 9 6 25 29 310.331 25 16 18 16 26 24 281.942 26 11 18 5 29 18 230.343 25 8 12 7 32 25 161.563 17 9 17 9 25 21 392.527 32 16 9 6 29 26 1077.414 33 11 9 6 28 22 248.275 13 16 12 5 17 22 557.386 32 12 18 12 28 22 731.874 25 12 12 7 29 23 301.429 29 14 18 10 26 30 226.36 22 9 14 9 25 23 215.018 18 10 15 8 14 17 157.672 17 9 16 5 25 23 219.118 20 10 10 8 26 23 213.019 15 12 11 8 20 25 390.642 20 14 14 10 18 24 157.124 33 14 9 6 32 24 227.652 29 10 12 8 25 23 239.266 23 14 17 7 25 21 506.343 26 16 5 4 23 24 149.219 18 9 12 8 21 24 213.351 20 10 12 8 20 28 174.517 11 6 6 4 15 16 172.531 28 8 24 20 30 20 320.656 26 13 12 8 24 29 305.011 22 10 12 8 26 27 266.495 17 8 14 6 24 22 361.511 12 7 7 4 22 28 361.019 14 15 13 8 14 16 382.187 17 9 12 9 24 25 196.763 21 10 13 6 24 24 273.212 19 12 14 7 24 28 186.397 18 13 8 9 24 24 294.205 10 10 11 5 19 23 364.685 29 11 9 5 31 30 230.501 31 8 11 8 22 24 217.51 19 9 13 8 27 21 262.297 9 13 10 6 19 25 169.246 20 11 11 8 25 25 260.428 28 8 12 7 20 22 348.187 19 9 9 7 21 23 512.937 30 9 15 9 27 26 164.496 29 15 18 11 23 23 111.187 26 9 15 6 25 25 169.999 23 10 12 8 20 21 240.187 13 14 13 6 21 25 187.158 21 12 14 9 22 24 194.096 19 12 10 8 23 29 265.846 28 11 13 6 25 22 283.319 23 14 13 10 25 27 356.938 18 6 11 8 17 26 240.802 21 12 13 8 19 22 326.662 20 8 16 10 25 24 249.266 23 14 8 5 19 27 277.368 21 11 16 7 20 24 394.618 21 10 11 5 26 24 235.686 15 14 9 8 23 29 227.641 28 12 16 14 27 22 159.593 19 10 12 7 17 21 268.866 26 14 14 8 17 24 206.466 10 5 8 6 19 24 233.064 16 11 9 5 17 23 133.824 22 10 15 6 22 20 486.783 19 9 11 10 21 27 228.859 31 10 21 12 32 26 155.238 31 16 14 9 21 25 2042.451 29 13 18 12 21 21 205.218 19 9 12 7 18 21 373.648 22 10 13 8 18 19 229.151 23 10 15 10 23 21 199.156 15 7 12 6 19 21 234.41 20 9 19 10 20 16 56.519 18 8 15 10 21 22 289.239 23 14 11 10 20 29 199.227 25 14 11 5 17 15 274.513 21 8 10 7 18 17 174.499 24 9 13 10 19 15 217.714 25 14 15 11 22 21 239.717 17 14 12 6 15 21 241.529 13 8 12 7 14 19 155.561 28 8 16 12 18 24 204.107 21 8 9 11 24 20 745.97 25 7 18 11 35 17 241.772 9 6 8 11 29 23 110.267 16 8 13 5 21 24 186.58 19 6 17 8 25 14 227.906 17 11 9 6 20 19 197.518 25 14 15 9 22 24 254.094 20 11 8 4 13 13 173.942 29 11 7 4 26 22 294.42 14 11 12 7 17 16 211.924 22 14 14 11 25 19 262.479 15 8 6 6 20 25 193.495 19 20 8 7 19 25 165.972 20 11 17 8 21 23 237.352 15 8 10 4 22 24 205.814 20 11 11 8 24 26 227.526 18 10 14 9 21 26 250.439 33 14 11 8 26 25 470.849 22 11 13 11 24 18 176.469 16 9 12 8 16 21 298.691 17 9 11 5 23 26 193.922 16 8 9 4 18 23 212.422 21 10 12 8 16 23 203.284 26 13 20 10 26 22 240.56 18 13 12 6 19 20 445.327 18 12 13 9 21 13 248.984 17 8 12 9 21 24 174.44 22 13 12 13 22 15 165.024 30 14 9 9 23 14 249.681 30 12 15 10 29 22 238.312 24 14 24 20 21 10 250.437 21 15 7 5 21 24 174.75 21 13 17 11 23 22 4941.633 29 16 11 6 27 24 138.936 31 9 17 9 25 19 203.181 20 9 11 7 21 20 187.747 16 9 12 9 10 13 270.95 22 8 14 10 20 20 307.688 20 7 11 9 26 22 184.477 28 16 16 8 24 24 230.916 38 11 21 7 29 29 187.286 22 9 14 6 19 12 169.376 20 11 20 13 24 20 182.838 17 9 13 6 19 21 176.081 28 14 11 8 24 24 248.056 22 13 15 10 22 22 235.24 31 16 19 16 17 20 76.347
Names of X columns:
CM D PE PC PS O Time
Sample Range:
(leave blank to include all observations)
From:
To:
Column Number of Endogenous Series
(?)
Fixed Seasonal Effects
Do not include Seasonal Dummies
Do not include Seasonal Dummies
Include Seasonal Dummies
Type of Equation
No Linear Trend
No Linear Trend
Linear Trend
First Differences
Seasonal Differences (s)
First and Seasonal Differences (s)
Degree of Predetermination (lagged endogenous variables)
Degree of Seasonal Predetermination
Seasonality
12
1
2
3
4
5
6
7
8
9
10
11
12
Chart options
R Code
library(lattice) library(lmtest) 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 k <- length(x[1,]) df <- as.data.frame(x) (mylm <- lm(df)) (mysum <- summary(mylm)) 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 } bitmap(file='test0.png') 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() bitmap(file='test1.png') plot(mysum$resid, type='b', pch=19, main='Residuals', ylab='value of Residuals', xlab='time or index') grid() dev.off() bitmap(file='test2.png') hist(mysum$resid, main='Residual Histogram', xlab='values of Residuals') grid() dev.off() bitmap(file='test3.png') densityplot(~mysum$resid,col='black',main='Residual Density Plot', xlab='values of Residuals') dev.off() bitmap(file='test4.png') qqnorm(mysum$resid, main='Residual Normal Q-Q Plot') qqline(mysum$resid) grid() dev.off() (myerror <- as.ts(mysum$resid)) bitmap(file='test5.png') dum <- cbind(lag(myerror,k=1),myerror) dum dum1 <- dum[2:length(myerror),] dum1 z <- as.data.frame(dum1) z 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() bitmap(file='test6.png') acf(mysum$resid, lag.max=length(mysum$resid)/2, main='Residual Autocorrelation Function') grid() dev.off() bitmap(file='test7.png') pacf(mysum$resid, lag.max=length(mysum$resid)/2, main='Residual Partial Autocorrelation Function') grid() dev.off() bitmap(file='test8.png') opar <- par(mfrow = c(2,2), oma = c(0, 0, 1.1, 0)) plot(mylm, las = 1, sub='Residual Diagnostics') par(opar) dev.off() if (n > n25) { bitmap(file='test9.png') plot(kp3:nmkm3,gqarr[,2], main='Goldfeld-Quandt test',ylab='2-sided p-value',xlab='breakpoint') grid() dev.off() } load(file='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='mytable1.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<br />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='mytable2.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='mytable3.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<br />Forecast', 1, TRUE) a<-table.element(a, 'Residuals<br />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='mytable4.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='mytable5.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='mytable6.tab') }
Compute
Summary of computational transaction
Raw Input
view raw input (R code)
Raw Output
view raw output of R engine
Computing time
0 seconds
R Server
Big Analytics Cloud Computing Center
Click here to blog (archive) this computation