Send output to:
Browser Blue - Charts White
Browser Black/White
CSV
Data X:
10.81 -0.2643 0 0 24563400 24.45 9.12 -0.2643 0 0 14163200 23.62 11.03 -0.2643 0 0 18184800 21.90 12.74 -0.1918 0 0 20810300 27.12 9.98 -0.1918 0 0 12843000 27.70 11.62 -0.1918 0 0 13866700 29.23 9.40 -0.2246 0 0 15119200 26.50 9.27 -0.2246 0 0 8301600 22.84 7.76 -0.2246 0 0 14039600 20.49 8.78 0.3654 0 0 12139700 23.28 10.65 0.3654 0 0 9649000 25.71 10.95 0.3654 0 0 8513600 26.52 12.36 0.0447 0 0 15278600 25.51 10.85 0.0447 0 0 15590900 23.36 11.84 0.0447 0 0 9691100 24.15 12.14 -0.0312 0 0 10882700 20.92 11.65 -0.0312 0 0 10294800 20.38 8.86 -0.0312 0 0 16031900 21.90 7.63 -0.0048 0 0 13683600 19.21 7.38 -0.0048 0 0 8677200 19.65 7.25 -0.0048 0 0 9874100 17.51 8.03 0.0705 0 0 10725500 21.41 7.75 0.0705 0 0 8348400 23.09 7.16 0.0705 0 0 8046200 20.70 7.18 -0.0134 0 0 10862300 19.00 7.51 -0.0134 0 0 8100300 19.04 7.07 -0.0134 0 0 7287500 19.45 7.11 0.0812 0 0 14002500 20.54 8.98 0.0812 0 0 19037900 19.77 9.53 0.0812 0 0 10774600 20.60 10.54 0.1885 0 0 8960600 21.21 11.31 0.1885 0 0 7773300 21.30 10.36 0.1885 0 0 9579700 22.33 11.44 0.3628 0 0 11270700 21.12 10.45 0.3628 0 0 9492800 20.77 10.69 0.3628 0 0 9136800 22.11 11.28 0.2942 0 0 14487600 22.34 11.96 0.2942 0 0 10133200 21.43 13.52 0.2942 0 0 18659700 20.14 12.89 0.3036 0 0 15980700 21.11 14.03 0.3036 0 0 9732100 21.19 16.27 0.3036 0 0 14626300 23.07 16.17 0.3703 0 0 16904000 23.01 17.25 0.3703 0 0 13616700 22.12 19.38 0.3703 0 0 13772900 22.40 26.20 0.7398 0 0 28749200 22.66 33.53 0.7398 0 0 31408300 24.21 32.20 0.7398 0 0 26342800 24.13 38.45 0.6988 0 0 48909500 23.73 44.86 0.6988 0 0 41542400 22.79 41.67 0.6988 0 0 24857200 21.89 36.06 0.7478 0 0 34093700 22.92 39.76 0.7478 0 0 22555200 23.44 36.81 0.7478 0 0 19067500 22.57 42.65 0.5651 0 0 19029100 23.27 46.89 0.5651 0 0 15223200 24.95 53.61 0.5651 0 0 21903700 23.45 57.59 0.6473 0 0 33306600 23.42 67.82 0.6473 0 0 23898100 25.30 71.89 0.6473 0 0 23279600 23.90 75.51 0.3441 0 0 40699800 25.73 68.49 0.3441 0 0 37646000 24.64 62.72 0.3441 0 0 37277000 24.95 70.39 0.2415 0 0 39246800 22.15 59.77 0.2415 0 0 27418400 20.85 57.27 0.2415 0 0 30318700 21.45 67.96 0.3151 0 0 32808100 22.15 67.85 0.3151 0 0 28668200 23.75 76.98 0.3151 0 0 32370300 25.27 81.08 0.239 0 0 24171100 26.53 91.66 0.239 0 0 25009100 27.22 84.84 0.239 0 0 32084300 27.69 85.73 0.2127 0 0 50117500 28.61 84.61 0.2127 0 0 27522200 26.21 92.91 0.2127 0 0 26816800 25.93 99.80 0.273 0 0 25136100 27.86 121.19 0.273 0 0 30295600 28.65 122.04 0.273 0.273 0 41526100 27.51 131.76 0.3657 0.3657 0 43845100 27.06 138.48 0.3657 0.3657 0 39188900 26.91 153.47 0.3657 0.3657 0 40496400 27.60 189.95 0.4643 0.4643 0 37438400 34.48 182.22 0.4643 0.4643 0 46553700 31.58 198.08 0.4643 0.4643 0 31771400 33.46 135.36 0.5096 0.5096 0 62108100 30.64 125.02 0.5096 0.5096 0 46645400 25.66 143.50 0.5096 0.5096 0 42313100 26.78 173.95 0.3592 0.3592 0 38841700 26.91 188.75 0.3592 0.3592 0 32650300 26.82 167.44 0.3592 0.3592 0 34281100 26.05 158.95 0.7439 0.7439 0 33096200 24.36 169.53 0.7439 0.7439 0 23273800 25.94 113.66 0.7439 0.7439 0 43697600 25.37 107.59 0.139 0.139 0 66902300 21.23 92.67 0.139 0.139 0 44957200 19.35 85.35 0.139 0.139 0 33800900 18.61 90.13 0.1383 0.1383 0 33487900 16.37 89.31 0.1383 0.1383 0 27394900 15.56 105.12 0.1383 0.1383 0 25963400 17.70 125.83 0.2874 0.2874 0 20952600 19.52 135.81 0.2874 0.2874 0 17702900 20.26 142.43 0.2874 0.2874 0 21282100 23.05 163.39 0.0596 0.0596 0 18449100 22.81 168.21 0.0596 0.0596 0 14415700 24.04 185.35 0.0596 0.0596 0 17906300 25.08 188.50 0.3201 0.3201 0 22197500 27.04 199.91 0.3201 0.3201 0 15856500 28.81 210.73 0.3201 0.3201 0 19068700 29.86 192.06 0.486 0.486 0 30855100 27.61 204.62 0.486 0.486 0 21209000 28.22 235.00 0.486 0.486 0 19541600 28.83 261.09 0.6129 0.6129 0.6129 21955000 30.06 256.88 0.6129 0.6129 0.6129 33725900 25.51 251.53 0.6129 0.6129 0.6129 28192800 22.75 257.25 0.6665 0.6665 0.6665 27377000 25.52 243.10 0.6665 0.6665 0.6665 16228100 23.33 283.75 0.6665 0.6665 0.6665 21278900 24.34
Names of X columns:
Apple Omzetgroei Omzetgroei_iPhone Omzetgroei_iPad Volume Microsoft
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
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