Send output to:
Browser Blue - Charts White
Browser Black/White
CSV
Data X:
158258 89 576 110 0 48 18 70 186739 57 510 74 1 53 20 80 7215 18 72 1 0 0 0 0 122689 92 625 154 0 49 26 81 226968 133 1153 125 0 76 31 124 494047 257 1913 278 1 125 36 140 171007 55 568 89 1 59 23 88 174432 57 464 59 0 76 30 115 149604 43 606 87 0 55 30 109 275702 93 924 129 1 67 26 104 121844 75 634 158 2 50 24 63 176637 67 667 120 0 73 30 118 92070 97 628 87 0 41 22 71 208880 110 1037 256 4 79 25 100 157095 55 400 51 4 51 18 63 147893 79 462 85 3 54 22 86 134175 53 393 92 0 75 33 132 68818 55 347 72 5 1 15 54 149555 85 814 142 0 73 34 134 27997 24 221 49 0 13 18 57 69866 57 361 40 0 19 15 59 227357 96 828 99 0 89 30 113 190182 72 632 127 0 37 25 96 127994 50 670 164 1 48 34 96 143712 83 572 41 1 50 21 78 164820 29 581 160 0 45 21 80 187214 155 658 92 0 59 25 93 176178 85 339 59 0 79 31 109 351374 115 894 89 0 60 31 115 192399 43 882 90 0 52 20 79 165257 43 463 76 0 50 28 103 173687 44 538 111 2 60 20 65 126350 103 703 92 4 53 17 66 224762 121 903 331 0 76 25 100 219428 52 787 84 1 63 24 96 0 1 0 0 0 0 0 0 208669 61 955 58 0 53 27 105 99706 50 533 138 3 44 14 51 136733 47 505 270 9 36 35 119 249965 63 795 64 0 83 34 136 232951 69 704 96 2 105 22 84 143748 58 617 62 0 37 34 136 94332 30 350 35 2 25 23 84 189893 77 800 59 1 63 24 92 114811 47 384 54 2 55 26 103 156861 92 319 40 2 41 22 82 81293 31 212 49 1 23 35 106 204965 92 679 117 0 63 22 88 223771 85 727 113 1 54 31 124 160254 58 936 172 8 68 26 97 48188 28 205 37 0 12 22 82 143776 66 462 51 0 84 21 79 286674 71 799 89 0 66 27 97 234829 78 678 73 0 56 30 107 195583 59 691 49 1 67 33 126 145942 54 534 74 8 40 11 40 203260 62 483 58 0 53 26 96 93764 23 301 72 1 26 26 100 151913 66 419 32 0 67 23 91 190487 93 938 59 10 36 38 136 143389 56 483 65 6 50 29 116 124825 76 770 81 0 48 19 76 124234 58 352 84 11 46 19 65 111501 36 427 48 3 53 26 96 153813 32 406 56 0 27 26 97 97548 39 403 39 0 38 31 114 178613 68 483 86 8 68 36 144 138708 65 887 152 2 93 25 90 111869 38 265 48 0 57 24 93 31970 15 101 40 0 5 21 78 224494 110 994 135 3 53 19 72 116999 65 389 83 1 36 12 45 113504 64 480 62 2 72 30 120 105932 68 448 89 1 49 21 59 159167 66 666 91 0 74 34 133 90204 42 395 82 2 13 32 117 165210 58 640 112 1 82 28 123 156752 94 814 69 0 71 28 110 76057 28 306 78 0 18 21 75 84971 71 395 105 0 34 31 114 80506 67 215 49 0 54 26 94 267162 60 778 60 0 43 29 116 62974 27 292 49 1 26 23 86 119802 34 482 132 0 44 25 90 75132 45 341 49 0 35 22 87 154426 50 527 71 0 32 26 99 222914 221 636 100 0 55 33 132 115019 108 284 74 0 58 24 96 99114 58 396 49 7 44 24 91 149326 51 575 72 0 39 21 77 144425 40 638 59 5 48 28 104 159599 74 641 90 1 72 27 97 151465 57 413 68 0 39 25 94 133686 58 505 81 0 28 15 60 58059 38 363 30 0 24 13 46 234131 113 715 166 0 49 36 135 193233 68 550 94 0 95 24 90 19349 12 67 15 0 13 1 2 205449 103 778 104 3 32 24 96 151538 75 805 61 0 41 31 109 59117 28 281 11 0 24 4 15 58280 23 240 44 0 41 20 64 126653 49 396 84 0 57 23 88 112265 58 294 66 1 28 23 84 83829 40 218 27 1 34 12 46 27676 22 194 59 0 2 16 59 134211 44 315 127 0 80 29 116 117451 32 251 32 0 18 10 29 0 0 0 0 0 0 0 0 85610 31 306 58 0 46 25 91 107205 66 371 57 0 25 21 76 144664 44 465 59 0 51 23 83 136540 61 429 76 0 59 21 84 71894 57 287 71 0 36 21 65 3616 5 14 5 0 0 0 0 0 0 0 0 0 0 0 0 167611 41 376 70 0 36 23 84 138047 78 547 72 0 68 29 99 152826 95 552 119 2 28 28 112 113245 37 287 56 0 36 23 92 43410 19 292 63 0 7 1 3 175762 71 529 92 1 70 29 109 90591 40 245 46 0 30 17 71 114942 52 519 61 8 55 30 110 60493 40 174 29 3 3 12 48 19764 12 75 19 1 10 2 8 164062 55 565 64 3 46 21 80 125970 29 359 66 0 34 25 95 151495 46 529 97 0 50 29 116 11796 9 79 22 0 1 2 8 10674 9 33 7 0 0 0 0 138547 55 475 37 0 35 18 56 6836 3 11 5 0 0 1 4 153278 58 606 48 6 48 21 70 5118 3 6 1 0 5 0 0 40248 16 183 34 1 8 4 14 0 0 0 0 0 0 0 0 117954 45 325 49 0 35 25 91 88837 38 269 44 0 21 26 89 7131 4 27 0 1 0 0 0 8812 13 97 18 0 0 4 12 68916 23 251 48 1 15 17 60 132697 50 290 54 0 50 21 80 100681 19 414 50 1 17 22 88
Names of X columns:
tottime log ccv cv csba bc rc fm
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
1 seconds
R Server
Big Analytics Cloud Computing Center
Click here to blog (archive) this computation