Home » date » 2010 » Dec » 22 »

opdracht science_computation II

*The author of this computation has been verified*
R Software Module: /rwasp_multipleregression.wasp (opens new window with default values)
Title produced by software: Multiple Regression
Date of computation: Wed, 22 Dec 2010 19:32:28 +0000
 
Cite this page as follows:
Statistical Computations at FreeStatistics.org, Office for Research Development and Education, URL http://www.freestatistics.org/blog/date/2010/Dec/22/t1293046641jwcr8ofnfmnd3pf.htm/, Retrieved Wed, 22 Dec 2010 20:37:21 +0100
 
BibTeX entries for LaTeX users:
@Manual{KEY,
    author = {{YOUR NAME}},
    publisher = {Office for Research Development and Education},
    title = {Statistical Computations at FreeStatistics.org, URL http://www.freestatistics.org/blog/date/2010/Dec/22/t1293046641jwcr8ofnfmnd3pf.htm/},
    year = {2010},
}
@Manual{R,
    title = {R: A Language and Environment for Statistical Computing},
    author = {{R Development Core Team}},
    organization = {R Foundation for Statistical Computing},
    address = {Vienna, Austria},
    year = {2010},
    note = {{ISBN} 3-900051-07-0},
    url = {http://www.R-project.org},
}
 
Original text written by user:
 
IsPrivate?
No (this computation is public)
 
User-defined keywords:
multiple regression van SWS
 
Dataseries X:
» Textbox « » Textfile « » CSV «
6,3 0 3 14,3 0,544068 1 9,1 1,023252 4 15,8 -1,63827 1 10,9 0,518514 1 8,3 1,717338 1 11 -0,37161 4 3,2 2,667453 5 2,1 3,406029 4 7,4 0,626853 1 9,5 -0,69897 2 3,3 1,441852 5 5,7 -0,12494 2 7,4 0,017033 4 11 -0,92082 2 6,6 -0,10513 2 2,1 2,716838 5 17,9 -2 1 12,8 0,544068 1 6,1 1,792392 1 6,3 -1,12494 1 11,9 -1,63827 3 13,8 0,230449 1 15,2 -0,31876 2 10 1 4 11,9 0,209515 2 6,5 2,283301 4 7,5 0,39794 5 10,6 -0,55284 3 8,4 0,832509 2 4,9 0,556303 3 4,7 1,929419 1 3,2 1,744293 5 10,4 -0,99568 3 5,2 2,20412 4 11 -0,04576 2 4,9 0,30103 3 13,2 -0,98297 2 9,7 0,622214 4
 
Output produced by software:

Enter (or paste) a matrix (table) containing all data (time) series. Every column represents a different variable and must be delimited by a space or Tab. Every row represents a period in time (or category) and must be delimited by hard returns. The easiest way to enter data is to copy and paste a block of spreadsheet cells. Please, do not use commas or spaces to seperate groups of digits!


Summary of computational transaction
Raw Inputview raw input (R code)
Raw Outputview raw output of R engine
Computing time4 seconds
R Server'Sir Ronald Aylmer Fisher' @ 193.190.124.24


Multiple Linear Regression - Estimated Regression Equation
SWS[t] = + 11.6991082572146 -1.81485800690488`log(wB)`[t] -0.80621684494493D[t] + e[t]


Multiple Linear Regression - Ordinary Least Squares
VariableParameterS.D.T-STAT
H0: parameter = 0
2-tail p-value1-tail p-value
(Intercept)11.69910825721460.94109512.431400
`log(wB)`-1.814858006904880.37295-4.86622.3e-051.1e-05
D-0.806216844944930.336956-2.39270.0220680.011034


Multiple Linear Regression - Regression Statistics
Multiple R0.757704432788026
R-squared0.574116007466625
Adjusted R-squared0.550455785659215
F-TEST (value)24.2650306552421
F-TEST (DF numerator)2
F-TEST (DF denominator)36
p-value2.12443624469927e-07
Multiple Linear Regression - Residual Statistics
Residual Standard Deviation2.66067300355413
Sum Squared Residuals254.850509946304


Multiple Linear Regression - Actuals, Interpolation, and Residuals
Time or IndexActualsInterpolation
Forecast
Residuals
Prediction Error
16.39.28045772237976-2.98045772237976
214.39.90548524616894.3945147538311
39.16.61718379215342.48281620784660
415.813.86611883924171.93388116075833
510.99.951862127677350.948137872322653
68.37.776166792407620.523833207592384
7119.148660261380751.85133973861925
83.22.826975597397470.373024402602528
92.12.29278187503463-0.192781875034626
107.49.75524222606728-2.35524222606728
119.511.355205868411-1.85520586841099
123.35.05126738551809-1.75126738551809
135.710.3134229267074-4.61342292670739
147.48.44332840100322-1.04332840100322
151111.7578321172428-0.757832117242839
166.610.2774705895906-3.6774705895906
172.12.73734883472647-0.637348834726474
1817.914.52260742607943.37739257392063
1912.89.90548524616892.8945147538311
206.17.63995443955738-1.53995443955738
216.312.9344977785572-6.63449777855719
2211.912.2536851493518-0.353685149351812
2313.810.47465919943643.3253408005636
2415.210.66517870560574.53482129439431
25106.659382870529963.34061712947004
2611.99.706434592008022.19356540799198
276.54.330373775410922.16962622458908
287.56.945819437222180.554180562777824
2910.610.28378382291710.316216177082946
308.48.57578894285432-0.175788942854321
314.98.27084676856456-3.37084676856456
324.77.39126989144522-2.69126989144522
333.24.50237991505178-1.30237991505178
3410.411.0874755426948-0.687475542694808
355.24.474076047255660.725923952744342
361110.16972246972070.83027753027934
374.98.73413101656119-3.83413101656119
3813.211.87062554237201.32937445762802
399.77.345010817526522.35498918247348


Goldfeld-Quandt test for Heteroskedasticity
p-valuesAlternative Hypothesis
breakpoint indexgreater2-sidedless
60.7121872970478070.5756254059043860.287812702952193
70.5960312235250940.8079375529498120.403968776474906
80.4434691289319320.8869382578638650.556530871068068
90.3149135265829110.6298270531658230.685086473417089
100.3836929524468220.7673859048936440.616307047553178
110.3639320530147530.7278641060295070.636067946985247
120.3027257848197670.6054515696395340.697274215180233
130.506416530954970.987166938090060.49358346904503
140.4075961502428520.8151923004857030.592403849757148
150.3120335487309360.6240670974618710.687966451269064
160.3728207630439550.745641526087910.627179236956045
170.2839984295830530.5679968591661070.716001570416946
180.3466177314410240.6932354628820470.653382268558976
190.3554759479530170.7109518959060340.644524052046983
200.2956961722640010.5913923445280020.704303827735999
210.739282153166790.521435693666420.26071784683321
220.6659488404290050.6681023191419890.334051159570995
230.6974284412214240.6051431175571510.302571558778576
240.8412807204703540.3174385590592920.158719279529646
250.8711351564069980.2577296871860040.128864843593002
260.8745774548006070.2508450903987860.125422545199393
270.881126054643570.237747890712860.11887394535643
280.809434851563260.381130296873480.19056514843674
290.7125479666477260.5749040667045480.287452033352274
300.6065699225855670.7868601548288670.393430077414433
310.6324578066361510.7350843867276980.367542193363849
320.5420142552362930.9159714895274150.457985744763707
330.4010897541887670.8021795083775340.598910245811233


Meta Analysis of Goldfeld-Quandt test for Heteroskedasticity
Description# significant tests% significant testsOK/NOK
1% type I error level00OK
5% type I error level00OK
10% type I error level00OK
 
Charts produced by software:
http://www.freestatistics.org/blog/date/2010/Dec/22/t1293046641jwcr8ofnfmnd3pf/10ffq21293046339.png (open in new window)
http://www.freestatistics.org/blog/date/2010/Dec/22/t1293046641jwcr8ofnfmnd3pf/10ffq21293046339.ps (open in new window)


http://www.freestatistics.org/blog/date/2010/Dec/22/t1293046641jwcr8ofnfmnd3pf/1qwtq1293046339.png (open in new window)
http://www.freestatistics.org/blog/date/2010/Dec/22/t1293046641jwcr8ofnfmnd3pf/1qwtq1293046339.ps (open in new window)


http://www.freestatistics.org/blog/date/2010/Dec/22/t1293046641jwcr8ofnfmnd3pf/21nst1293046339.png (open in new window)
http://www.freestatistics.org/blog/date/2010/Dec/22/t1293046641jwcr8ofnfmnd3pf/21nst1293046339.ps (open in new window)


http://www.freestatistics.org/blog/date/2010/Dec/22/t1293046641jwcr8ofnfmnd3pf/31nst1293046339.png (open in new window)
http://www.freestatistics.org/blog/date/2010/Dec/22/t1293046641jwcr8ofnfmnd3pf/31nst1293046339.ps (open in new window)


http://www.freestatistics.org/blog/date/2010/Dec/22/t1293046641jwcr8ofnfmnd3pf/4tfsw1293046339.png (open in new window)
http://www.freestatistics.org/blog/date/2010/Dec/22/t1293046641jwcr8ofnfmnd3pf/4tfsw1293046339.ps (open in new window)


http://www.freestatistics.org/blog/date/2010/Dec/22/t1293046641jwcr8ofnfmnd3pf/5tfsw1293046339.png (open in new window)
http://www.freestatistics.org/blog/date/2010/Dec/22/t1293046641jwcr8ofnfmnd3pf/5tfsw1293046339.ps (open in new window)


http://www.freestatistics.org/blog/date/2010/Dec/22/t1293046641jwcr8ofnfmnd3pf/6tfsw1293046339.png (open in new window)
http://www.freestatistics.org/blog/date/2010/Dec/22/t1293046641jwcr8ofnfmnd3pf/6tfsw1293046339.ps (open in new window)


http://www.freestatistics.org/blog/date/2010/Dec/22/t1293046641jwcr8ofnfmnd3pf/746rz1293046339.png (open in new window)
http://www.freestatistics.org/blog/date/2010/Dec/22/t1293046641jwcr8ofnfmnd3pf/746rz1293046339.ps (open in new window)


http://www.freestatistics.org/blog/date/2010/Dec/22/t1293046641jwcr8ofnfmnd3pf/846rz1293046339.png (open in new window)
http://www.freestatistics.org/blog/date/2010/Dec/22/t1293046641jwcr8ofnfmnd3pf/846rz1293046339.ps (open in new window)


http://www.freestatistics.org/blog/date/2010/Dec/22/t1293046641jwcr8ofnfmnd3pf/9ffq21293046339.png (open in new window)
http://www.freestatistics.org/blog/date/2010/Dec/22/t1293046641jwcr8ofnfmnd3pf/9ffq21293046339.ps (open in new window)


 
Parameters (Session):
par1 = 1 ; par2 = Do not include Seasonal Dummies ; par3 = No Linear Trend ;
 
Parameters (R input):
par1 = 1 ; par2 = Do not include Seasonal Dummies ; par3 = No Linear Trend ;
 
R code (references can be found in the software module):
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')
}
 





Copyright

Creative Commons License

This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 License.

Software written by Ed van Stee & Patrick Wessa


Disclaimer

Information provided on this web site is provided "AS IS" without warranty of any kind, either express or implied, including, without limitation, warranties of merchantability, fitness for a particular purpose, and noninfringement. We use reasonable efforts to include accurate and timely information and periodically update the information, and software without notice. However, we make no warranties or representations as to the accuracy or completeness of such information (or software), and we assume no liability or responsibility for errors or omissions in the content of this web site, or any software bugs in online applications. Your use of this web site is AT YOUR OWN RISK. Under no circumstances and under no legal theory shall we be liable to you or any other person for any direct, indirect, special, incidental, exemplary, or consequential damages arising from your access to, or use of, this web site.


Privacy Policy

We may request personal information to be submitted to our servers in order to be able to:

  • personalize online software applications according to your needs
  • enforce strict security rules with respect to the data that you upload (e.g. statistical data)
  • manage user sessions of online applications
  • alert you about important changes or upgrades in resources or applications

We NEVER allow other companies to directly offer registered users information about their products and services. Banner references and hyperlinks of third parties NEVER contain any personal data of the visitor.

We do NOT sell, nor transmit by any means, personal information, nor statistical data series uploaded by you to third parties.

We carefully protect your data from loss, misuse, alteration, and destruction. However, at any time, and under any circumstance you are solely responsible for managing your passwords, and keeping them secret.

We store a unique ANONYMOUS USER ID in the form of a small 'Cookie' on your computer. This allows us to track your progress when using this website which is necessary to create state-dependent features. The cookie is used for NO OTHER PURPOSE. At any time you may opt to disallow cookies from this website - this will not affect other features of this website.

We examine cookies that are used by third-parties (banner and online ads) very closely: abuse from third-parties automatically results in termination of the advertising contract without refund. We have very good reason to believe that the cookies that are produced by third parties (banner ads) do NOT cause any privacy or security risk.

FreeStatistics.org is safe. There is no need to download any software to use the applications and services contained in this website. Hence, your system's security is not compromised by their use, and your personal data - other than data you submit in the account application form, and the user-agent information that is transmitted by your browser - is never transmitted to our servers.

As a general rule, we do not log on-line behavior of individuals (other than normal logging of webserver 'hits'). However, in cases of abuse, hacking, unauthorized access, Denial of Service attacks, illegal copying, hotlinking, non-compliance with international webstandards (such as robots.txt), or any other harmful behavior, our system engineers are empowered to log, track, identify, publish, and ban misbehaving individuals - even if this leads to ban entire blocks of IP addresses, or disclosing user's identity.


FreeStatistics.org is powered by