Send output to:
Browser Blue - Charts White
Browser Black/White
CSV
Data X:
102.1880309 0 114.0150276 108.1560276 100 0 0 0 110.3672031 0 102.1880309 114.0150276 108.1560276 0 0 0 96.8602511 0 110.3672031 102.1880309 114.0150276 0 0 0 94.1944583 0 96.8602511 110.3672031 102.1880309 0 0 0 99.51621961 0 94.1944583 96.8602511 110.3672031 0 0 0 94.06333487 0 99.51621961 94.1944583 96.8602511 0 0 0 97.5541476 0 94.06333487 99.51621961 94.1944583 0 0 0 78.15062422 0 97.5541476 94.06333487 99.51621961 0 0 0 81.2434643 0 78.15062422 97.5541476 94.06333487 0 0 0 92.36262465 0 81.2434643 78.15062422 97.5541476 0 0 0 96.06324371 0 92.36262465 81.2434643 78.15062422 0 0 0 114.0523777 0 96.06324371 92.36262465 81.2434643 0 0 0 110.6616666 0 114.0523777 96.06324371 92.36262465 0 0 0 104.9171949 0 110.6616666 114.0523777 96.06324371 0 0 0 90.00187193 0 104.9171949 110.6616666 114.0523777 0 0 0 95.7008067 0 90.00187193 104.9171949 110.6616666 0 0 0 86.02741157 0 95.7008067 90.00187193 104.9171949 0 0 0 84.85287668 0 86.02741157 95.7008067 90.00187193 0 0 0 100.04328 0 84.85287668 86.02741157 95.7008067 0 0 0 80.91713823 0 100.04328 84.85287668 86.02741157 0 0 0 74.06539709 0 80.91713823 100.04328 84.85287668 0 0 0 77.30281369 0 74.06539709 80.91713823 100.04328 0 0 0 97.23043249 0 77.30281369 74.06539709 80.91713823 0 0 0 90.75515676 0 97.23043249 77.30281369 74.06539709 0 0 0 100.5614455 0 90.75515676 97.23043249 77.30281369 0 0 0 92.01293267 0 100.5614455 90.75515676 97.23043249 0 0 0 99.24012138 0 92.01293267 100.5614455 90.75515676 0 0 0 105.8672755 0 99.24012138 92.01293267 100.5614455 0 0 0 90.9920463 0 105.8672755 99.24012138 92.01293267 0 0 0 93.30624423 0 90.9920463 105.8672755 99.24012138 0 0 0 91.17419413 0 93.30624423 90.9920463 105.8672755 0 0 0 77.33295039 0 91.17419413 93.30624423 90.9920463 0 0 0 91.1277721 0 77.33295039 91.17419413 93.30624423 0 0 0 85.01249943 0 91.1277721 77.33295039 91.17419413 0 0 0 83.90390242 0 85.01249943 91.1277721 77.33295039 0 0 0 104.8626302 0 83.90390242 85.01249943 91.1277721 0 0 0 110.9039108 0 104.8626302 83.90390242 85.01249943 0 0 0 95.43714373 0 110.9039108 104.8626302 83.90390242 0 0 0 111.6238727 0 95.43714373 110.9039108 104.8626302 0 0 0 108.8925403 0 111.6238727 95.43714373 110.9039108 0 0 0 96.17511682 0 108.8925403 111.6238727 95.43714373 0 0 0 101.9740205 0 96.17511682 108.8925403 111.6238727 0 0 0 99.11953031 0 101.9740205 96.17511682 108.8925403 0 0 0 86.78158147 0 99.11953031 101.9740205 96.17511682 0 0 0 118.4195003 0 86.78158147 99.11953031 101.9740205 0 0 0 118.7441447 0 118.4195003 86.78158147 99.11953031 0 0 0 106.5296192 0 118.7441447 118.4195003 86.78158147 0 0 0 134.7772694 0 106.5296192 118.7441447 118.4195003 0 0 0 104.6778714 0 134.7772694 106.5296192 118.7441447 0 0 0 105.2954304 0 104.6778714 134.7772694 106.5296192 0 0 0 139.4139849 0 105.2954304 104.6778714 134.7772694 0 0 0 103.6060491 0 139.4139849 105.2954304 104.6778714 0 0 0 99.78182974 0 103.6060491 139.4139849 105.2954304 0 0 0 103.4610301 0 99.78182974 103.6060491 139.4139849 0 0 0 120.0594945 0 103.4610301 99.78182974 103.6060491 0 0 0 96.71377168 0 120.0594945 103.4610301 99.78182974 0 0 0 107.1308929 0 96.71377168 120.0594945 103.4610301 0 0 0 105.3608372 0 107.1308929 96.71377168 120.0594945 0 0 0 111.6942359 0 105.3608372 107.1308929 96.71377168 0 0 0 132.0519998 0 111.6942359 105.3608372 107.1308929 0 0 0 126.8037879 0 132.0519998 111.6942359 105.3608372 0 0 0 154.4824253 0 126.8037879 132.0519998 111.6942359 1 0 0 141.5570984 0 154.4824253 126.8037879 132.0519998 0 0 0 109.9506882 0 141.5570984 154.4824253 126.8037879 0 0 0 127.904198 0 109.9506882 141.5570984 154.4824253 0 0 0 133.0888617 0 127.904198 109.9506882 141.5570984 0 0 0 120.0796299 0 133.0888617 127.904198 109.9506882 0 0 0 117.5557142 0 120.0796299 133.0888617 127.904198 0 0 0 143.0362309 0 117.5557142 120.0796299 133.0888617 0 0 0 159.982927 1 143.0362309 117.5557142 120.0796299 0 1 0 128.5991124 1 159.982927 143.0362309 117.5557142 0 0 0 149.7373327 1 128.5991124 159.982927 143.0362309 0 0 0 126.8169313 1 149.7373327 128.5991124 159.982927 0 0 0 140.9639674 1 126.8169313 149.7373327 128.5991124 0 0 0 137.6691981 1 140.9639674 126.8169313 149.7373327 0 0 0 117.9402337 1 137.6691981 140.9639674 126.8169313 0 0 0 122.3095247 1 117.9402337 137.6691981 140.9639674 0 0 0 127.7804207 1 122.3095247 117.9402337 137.6691981 0 0 0 136.1677176 1 127.7804207 122.3095247 117.9402337 0 0 0 116.2405856 1 136.1677176 127.7804207 122.3095247 0 0 0 123.1576893 1 116.2405856 136.1677176 127.7804207 0 0 0 116.3400234 1 123.1576893 116.2405856 136.1677176 0 0 0 108.6119282 1 116.3400234 123.1576893 116.2405856 0 0 0 125.8982264 1 108.6119282 116.3400234 123.1576893 0 0 0 112.8003105 1 125.8982264 108.6119282 116.3400234 0 0 0 107.5182447 1 112.8003105 125.8982264 108.6119282 0 0 0 135.0955413 1 107.5182447 112.8003105 125.8982264 0 0 0 115.5096488 1 135.0955413 107.5182447 112.8003105 0 0 0 115.8640759 1 115.5096488 135.0955413 107.5182447 0 0 0 104.5883906 1 115.8640759 115.5096488 135.0955413 0 0 0 163.7213386 1 104.5883906 115.8640759 115.5096488 0 0 1 113.4482275 1 163.7213386 104.5883906 115.8640759 0 0 0 98.0428844 1 113.4482275 163.7213386 104.5883906 0 0 0 116.7868521 1 98.0428844 113.4482275 163.7213386 0 0 0 126.5330444 1 116.7868521 98.0428844 113.4482275 0 0 0 113.0336597 1 126.5330444 116.7868521 98.0428844 0 0 0 124.3392163 1 113.0336597 126.5330444 116.7868521 0 0 0 109.8298759 1 124.3392163 113.0336597 126.5330444 0 0 0 124.4434777 1 109.8298759 124.3392163 113.0336597 0 0 0 111.5039454 1 124.4434777 109.8298759 124.3392163 0 0 0 102.0350019 1 111.5039454 124.4434777 109.8298759 0 0 0 116.8726598 1 102.0350019 111.5039454 124.4434777 0 0 0 112.2073122 1 116.8726598 102.0350019 111.5039454 0 0 0 101.1513902 1 112.2073122 116.8726598 102.0350019 0 0 0 124.4255108 1 101.1513902 112.2073122 116.8726598 0 0 0
Names of X columns:
Y X Y1 Y2 Y3 O1 O2 O3
Sample Range:
(leave blank to include all observations)
From:
To:
Column Number of Endogenous Series
(?)
Fixed Seasonal Effects
Include Monthly Dummies
Do not include Seasonal Dummies
Include Seasonal Dummies
Type of Equation
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