Home » date » 2010 » Dec » 22 »

*The author of this computation has been verified*
R Software Module: /rwasp_regression_trees1.wasp (opens new window with default values)
Title produced by software: Recursive Partitioning (Regression Trees)
Date of computation: Wed, 22 Dec 2010 20:35:36 +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/t1293050013a591noaqjz92f2y.htm/, Retrieved Wed, 22 Dec 2010 21:33:34 +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/t1293050013a591noaqjz92f2y.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:
 
Dataseries X:
» Textbox « » Textfile « » CSV «
5 4 3 2 12 4 4 3 2 11 5 5 5 2 15 2 2 2 1 6 4 5 4 2 13 3 3 4 2 10 5 3 4 2 12 5 5 4 2 14 4 3 5 2 12 3 3 NA 2 6 2 4 4 1 10 4 4 4 2 12 4 4 4 1 12 4 3 4 2 11 5 5 5 2 15 5 4 3 1 12 4 4 2 1 10 4 4 4 2 12 4 4 3 1 11 4 4 4 2 12 4 4 3 1 11 4 4 4 2 12 5 4 4 2 13 3 4 4 2 11 5 NA 4 1 9 4 4 5 2 13 4 3 3 1 10 5 5 4 2 14 4 4 4 2 12 3 4 3 1 10 4 4 4 2 12 4 2 2 1 8 4 3 3 2 10 4 4 4 2 12 4 4 4 1 12 2 2 3 1 7 3 NA 3 1 6 4 4 4 1 12 3 4 3 2 10 4 3 3 1 10 2 4 4 1 10 4 4 4 2 12 5 5 5 1 15 4 3 3 1 10 4 4 2 2 10 4 4 4 2 12 5 4 4 2 13 3 4 4 2 11 4 4 3 2 11 4 4 4 1 12 5 5 4 2 14 3 3 4 1 10 4 4 4 1 12 5 4 4 2 13 2 1 2 1 5 2 2 2 2 6 4 4 4 2 12 4 4 4 2 12 4 3 4 1 11 4 3 3 2 10 2 2 3 1 7 4 4 4 1 12 5 5 4 2 14 3 4 4 2 11 4 4 4 2 12 5 4 4 1 13 5 5 4 2 14 4 4 3 1 11 4 4 4 2 12 4 4 4 1 12 2 3 3 1 8 3 4 4 2 11 5 5 4 2 14 4 5 5 1 14 4 4 4 1 12 3 2 4 2 9 4 4 5 2 13 3 4 4 2 11 4 4 4 1 12 4 4 4 1 12 4 4 4 1 12 4 4 4 1 12 4 4 4 2 12 4 4 4 1 12 4 4 3 2 11 3 4 3 2 10 etc...
 
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 time5 seconds
R Server'RServer@AstonUniversity' @ vre.aston.ac.uk
R Framework
error message
The field 'Names of X columns' contains a hard return which cannot be interpreted.
Please, resubmit your request without hard returns in the 'Names of X columns'.


Goodness of Fit
Correlation0.9134
R-squared0.8343
RMSE0.8692


Actuals, Predictions, and Residuals
#ActualsForecastsResiduals
11212.8333333333333-0.833333333333334
21110.85714285714290.142857142857142
31514.10526315789470.894736842105264
467.3125-1.3125
51312.10416666666670.895833333333334
61010.0555555555556-0.0555555555555554
71210.05555555555561.94444444444444
81414.1052631578947-0.105263157894736
91210.05555555555561.94444444444444
10610.0555555555556-4.05555555555556
111010.6-0.6
121212.1041666666667-0.104166666666666
131212.1041666666667-0.104166666666666
141110.05555555555560.944444444444445
151514.10526315789470.894736842105264
161212.8333333333333-0.833333333333334
171010.8571428571429-0.857142857142858
181212.1041666666667-0.104166666666666
191110.85714285714290.142857142857142
201212.1041666666667-0.104166666666666
211110.85714285714290.142857142857142
221212.1041666666667-0.104166666666666
231312.83333333333330.166666666666666
241110.60.4
25914.1052631578947-5.10526315789474
261312.10416666666670.895833333333334
271010.0555555555556-0.0555555555555554
281414.1052631578947-0.105263157894736
291212.1041666666667-0.104166666666666
30108.888888888888891.11111111111111
311212.1041666666667-0.104166666666666
3288.44444444444444-0.444444444444445
331010.0555555555556-0.0555555555555554
341212.1041666666667-0.104166666666666
351212.1041666666667-0.104166666666666
3677.3125-0.3125
3768.88888888888889-2.88888888888889
381212.1041666666667-0.104166666666666
39108.888888888888891.11111111111111
401010.0555555555556-0.0555555555555554
411010.6-0.6
421212.1041666666667-0.104166666666666
431514.10526315789470.894736842105264
441010.0555555555556-0.0555555555555554
451010.8571428571429-0.857142857142858
461212.1041666666667-0.104166666666666
471312.83333333333330.166666666666666
481110.60.4
491110.85714285714290.142857142857142
501212.1041666666667-0.104166666666666
511414.1052631578947-0.105263157894736
521010.0555555555556-0.0555555555555554
531212.1041666666667-0.104166666666666
541312.83333333333330.166666666666666
5557.3125-2.3125
5667.3125-1.3125
571212.1041666666667-0.104166666666666
581212.1041666666667-0.104166666666666
591110.05555555555560.944444444444445
601010.0555555555556-0.0555555555555554
6177.3125-0.3125
621212.1041666666667-0.104166666666666
631414.1052631578947-0.105263157894736
641110.60.4
651212.1041666666667-0.104166666666666
661312.83333333333330.166666666666666
671414.1052631578947-0.105263157894736
681110.85714285714290.142857142857142
691212.1041666666667-0.104166666666666
701212.1041666666667-0.104166666666666
7187.31250.6875
721110.60.4
731414.1052631578947-0.105263157894736
741412.10416666666671.89583333333333
751212.1041666666667-0.104166666666666
76910.0555555555556-1.05555555555556
771312.10416666666670.895833333333334
781110.60.4
791212.1041666666667-0.104166666666666
801212.1041666666667-0.104166666666666
811212.1041666666667-0.104166666666666
821212.1041666666667-0.104166666666666
831212.1041666666667-0.104166666666666
841212.1041666666667-0.104166666666666
851110.85714285714290.142857142857142
86108.888888888888891.11111111111111
8798.444444444444440.555555555555555
881212.1041666666667-0.104166666666666
891212.1041666666667-0.104166666666666
901212.1041666666667-0.104166666666666
91910.0555555555556-1.05555555555556
921514.10526315789470.894736842105264
931212.1041666666667-0.104166666666666
941212.1041666666667-0.104166666666666
951212.1041666666667-0.104166666666666
961010.8571428571429-0.857142857142858
971312.83333333333330.166666666666666
9898.444444444444440.555555555555555
991212.1041666666667-0.104166666666666
1001010.6-0.6
1011414.1052631578947-0.105263157894736
1021110.85714285714290.142857142857142
1031514.10526315789470.894736842105264
1041110.85714285714290.142857142857142
1051110.85714285714290.142857142857142
1061212.1041666666667-0.104166666666666
1071212.1041666666667-0.104166666666666
1081212.1041666666667-0.104166666666666
1091110.05555555555560.944444444444445
11078.88888888888889-1.88888888888889
1111212.1041666666667-0.104166666666666
1121414.1052631578947-0.105263157894736
1131110.85714285714290.142857142857142
1141110.05555555555560.944444444444445
1151010.6-0.6
1161312.83333333333330.166666666666666
1171314.1052631578947-1.10526315789474
11887.31250.6875
1191110.85714285714290.142857142857142
1201212.1041666666667-0.104166666666666
1211110.85714285714290.142857142857142
1221312.83333333333330.166666666666666
1231212.1041666666667-0.104166666666666
1241414.1052631578947-0.105263157894736
1251312.83333333333330.166666666666666
1261514.10526315789470.894736842105264
1271010.0555555555556-0.0555555555555554
1281110.85714285714290.142857142857142
12998.444444444444440.555555555555555
1301110.85714285714290.142857142857142
131108.888888888888891.11111111111111
1321110.85714285714290.142857142857142
13388.44444444444444-0.444444444444445
1341110.85714285714290.142857142857142
1351212.1041666666667-0.104166666666666
1361212.1041666666667-0.104166666666666
13798.444444444444440.555555555555555
1381110.85714285714290.142857142857142
139108.888888888888891.11111111111111
14087.31250.6875
14197.31251.6875
14288.44444444444444-0.444444444444445
14398.888888888888890.111111111111111
1441514.10526315789470.894736842105264
1451110.60.4
14688.88888888888889-0.88888888888889
1471312.83333333333330.166666666666666
1481212.1041666666667-0.104166666666666
1491212.1041666666667-0.104166666666666
15097.31251.6875
15178.44444444444444-1.44444444444444
1521312.83333333333330.166666666666666
153910.0555555555556-1.05555555555556
15467.3125-1.3125
15587.31250.6875
15687.31250.6875
1571514.10526315789470.894736842105264
15867.3125-1.3125
15998.444444444444440.555555555555555
1601110.85714285714290.142857142857142
16187.31250.6875
16287.31250.6875
 
Charts produced by software:
http://www.freestatistics.org/blog/date/2010/Dec/22/t1293050013a591noaqjz92f2y/26ais1293050129.png (open in new window)
http://www.freestatistics.org/blog/date/2010/Dec/22/t1293050013a591noaqjz92f2y/26ais1293050129.ps (open in new window)


http://www.freestatistics.org/blog/date/2010/Dec/22/t1293050013a591noaqjz92f2y/36ais1293050129.png (open in new window)
http://www.freestatistics.org/blog/date/2010/Dec/22/t1293050013a591noaqjz92f2y/36ais1293050129.ps (open in new window)


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


 
Parameters (Session):
par1 = 5 ; par2 = none ; par4 = no ;
 
Parameters (R input):
par1 = 5 ; par2 = none ; par4 = no ;
 
R code (references can be found in the software module):
library(party)
library(Hmisc)
par1 <- as.numeric(par1)
par3 <- as.numeric(par3)
x <- data.frame(t(y))
is.data.frame(x)
x <- x[!is.na(x[,par1]),]
k <- length(x[1,])
n <- length(x[,1])
colnames(x)[par1]
x[,par1]
if (par2 == 'kmeans') {
cl <- kmeans(x[,par1], par3)
print(cl)
clm <- matrix(cbind(cl$centers,1:par3),ncol=2)
clm <- clm[sort.list(clm[,1]),]
for (i in 1:par3) {
cl$cluster[cl$cluster==clm[i,2]] <- paste('C',i,sep='')
}
cl$cluster <- as.factor(cl$cluster)
print(cl$cluster)
x[,par1] <- cl$cluster
}
if (par2 == 'quantiles') {
x[,par1] <- cut2(x[,par1],g=par3)
}
if (par2 == 'hclust') {
hc <- hclust(dist(x[,par1])^2, 'cen')
print(hc)
memb <- cutree(hc, k = par3)
dum <- c(mean(x[memb==1,par1]))
for (i in 2:par3) {
dum <- c(dum, mean(x[memb==i,par1]))
}
hcm <- matrix(cbind(dum,1:par3),ncol=2)
hcm <- hcm[sort.list(hcm[,1]),]
for (i in 1:par3) {
memb[memb==hcm[i,2]] <- paste('C',i,sep='')
}
memb <- as.factor(memb)
print(memb)
x[,par1] <- memb
}
if (par2=='equal') {
ed <- cut(as.numeric(x[,par1]),par3,labels=paste('C',1:par3,sep=''))
x[,par1] <- as.factor(ed)
}
table(x[,par1])
colnames(x)
colnames(x)[par1]
x[,par1]
if (par2 == 'none') {
m <- ctree(as.formula(paste(colnames(x)[par1],' ~ .',sep='')),data = x)
}
load(file='createtable')
if (par2 != 'none') {
m <- ctree(as.formula(paste('as.factor(',colnames(x)[par1],') ~ .',sep='')),data = x)
if (par4=='yes') {
a<-table.start()
a<-table.row.start(a)
a<-table.element(a,'10-Fold Cross Validation',3+2*par3,TRUE)
a<-table.row.end(a)
a<-table.row.start(a)
a<-table.element(a,'',1,TRUE)
a<-table.element(a,'Prediction (training)',par3+1,TRUE)
a<-table.element(a,'Prediction (testing)',par3+1,TRUE)
a<-table.row.end(a)
a<-table.row.start(a)
a<-table.element(a,'Actual',1,TRUE)
for (jjj in 1:par3) a<-table.element(a,paste('C',jjj,sep=''),1,TRUE)
a<-table.element(a,'CV',1,TRUE)
for (jjj in 1:par3) a<-table.element(a,paste('C',jjj,sep=''),1,TRUE)
a<-table.element(a,'CV',1,TRUE)
a<-table.row.end(a)
for (i in 1:10) {
ind <- sample(2, nrow(x), replace=T, prob=c(0.9,0.1))
m.ct <- ctree(as.formula(paste('as.factor(',colnames(x)[par1],') ~ .',sep='')),data =x[ind==1,])
if (i==1) {
m.ct.i.pred <- predict(m.ct, newdata=x[ind==1,])
m.ct.i.actu <- x[ind==1,par1]
m.ct.x.pred <- predict(m.ct, newdata=x[ind==2,])
m.ct.x.actu <- x[ind==2,par1]
} else {
m.ct.i.pred <- c(m.ct.i.pred,predict(m.ct, newdata=x[ind==1,]))
m.ct.i.actu <- c(m.ct.i.actu,x[ind==1,par1])
m.ct.x.pred <- c(m.ct.x.pred,predict(m.ct, newdata=x[ind==2,]))
m.ct.x.actu <- c(m.ct.x.actu,x[ind==2,par1])
}
}
print(m.ct.i.tab <- table(m.ct.i.actu,m.ct.i.pred))
numer <- 0
for (i in 1:par3) {
print(m.ct.i.tab[i,i] / sum(m.ct.i.tab[i,]))
numer <- numer + m.ct.i.tab[i,i]
}
print(m.ct.i.cp <- numer / sum(m.ct.i.tab))
print(m.ct.x.tab <- table(m.ct.x.actu,m.ct.x.pred))
numer <- 0
for (i in 1:par3) {
print(m.ct.x.tab[i,i] / sum(m.ct.x.tab[i,]))
numer <- numer + m.ct.x.tab[i,i]
}
print(m.ct.x.cp <- numer / sum(m.ct.x.tab))
for (i in 1:par3) {
a<-table.row.start(a)
a<-table.element(a,paste('C',i,sep=''),1,TRUE)
for (jjj in 1:par3) a<-table.element(a,m.ct.i.tab[i,jjj])
a<-table.element(a,round(m.ct.i.tab[i,i]/sum(m.ct.i.tab[i,]),4))
for (jjj in 1:par3) a<-table.element(a,m.ct.x.tab[i,jjj])
a<-table.element(a,round(m.ct.x.tab[i,i]/sum(m.ct.x.tab[i,]),4))
a<-table.row.end(a)
}
a<-table.row.start(a)
a<-table.element(a,'Overall',1,TRUE)
for (jjj in 1:par3) a<-table.element(a,'-')
a<-table.element(a,round(m.ct.i.cp,4))
for (jjj in 1:par3) a<-table.element(a,'-')
a<-table.element(a,round(m.ct.x.cp,4))
a<-table.row.end(a)
a<-table.end(a)
table.save(a,file='mytable3.tab')
}
}
m
bitmap(file='test1.png')
plot(m)
dev.off()
bitmap(file='test1a.png')
plot(x[,par1] ~ as.factor(where(m)),main='Response by Terminal Node',xlab='Terminal Node',ylab='Response')
dev.off()
if (par2 == 'none') {
forec <- predict(m)
result <- as.data.frame(cbind(x[,par1],forec,x[,par1]-forec))
colnames(result) <- c('Actuals','Forecasts','Residuals')
print(result)
}
if (par2 != 'none') {
print(cbind(as.factor(x[,par1]),predict(m)))
myt <- table(as.factor(x[,par1]),predict(m))
print(myt)
}
bitmap(file='test2.png')
if(par2=='none') {
op <- par(mfrow=c(2,2))
plot(density(result$Actuals),main='Kernel Density Plot of Actuals')
plot(density(result$Residuals),main='Kernel Density Plot of Residuals')
plot(result$Forecasts,result$Actuals,main='Actuals versus Predictions',xlab='Predictions',ylab='Actuals')
plot(density(result$Forecasts),main='Kernel Density Plot of Predictions')
par(op)
}
if(par2!='none') {
plot(myt,main='Confusion Matrix',xlab='Actual',ylab='Predicted')
}
dev.off()
if (par2 == 'none') {
detcoef <- cor(result$Forecasts,result$Actuals)
a<-table.start()
a<-table.row.start(a)
a<-table.element(a,'Goodness of Fit',2,TRUE)
a<-table.row.end(a)
a<-table.row.start(a)
a<-table.element(a,'Correlation',1,TRUE)
a<-table.element(a,round(detcoef,4))
a<-table.row.end(a)
a<-table.row.start(a)
a<-table.element(a,'R-squared',1,TRUE)
a<-table.element(a,round(detcoef*detcoef,4))
a<-table.row.end(a)
a<-table.row.start(a)
a<-table.element(a,'RMSE',1,TRUE)
a<-table.element(a,round(sqrt(mean((result$Residuals)^2)),4))
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,'Actuals, Predictions, and Residuals',4,TRUE)
a<-table.row.end(a)
a<-table.row.start(a)
a<-table.element(a,'#',header=TRUE)
a<-table.element(a,'Actuals',header=TRUE)
a<-table.element(a,'Forecasts',header=TRUE)
a<-table.element(a,'Residuals',header=TRUE)
a<-table.row.end(a)
for (i in 1:length(result$Actuals)) {
a<-table.row.start(a)
a<-table.element(a,i,header=TRUE)
a<-table.element(a,result$Actuals[i])
a<-table.element(a,result$Forecasts[i])
a<-table.element(a,result$Residuals[i])
a<-table.row.end(a)
}
a<-table.end(a)
table.save(a,file='mytable.tab')
}
if (par2 != 'none') {
a<-table.start()
a<-table.row.start(a)
a<-table.element(a,'Confusion Matrix (predicted in columns / actuals in rows)',par3+1,TRUE)
a<-table.row.end(a)
a<-table.row.start(a)
a<-table.element(a,'',1,TRUE)
for (i in 1:par3) {
a<-table.element(a,paste('C',i,sep=''),1,TRUE)
}
a<-table.row.end(a)
for (i in 1:par3) {
a<-table.row.start(a)
a<-table.element(a,paste('C',i,sep=''),1,TRUE)
for (j in 1:par3) {
a<-table.element(a,myt[i,j])
}
a<-table.row.end(a)
}
a<-table.end(a)
table.save(a,file='mytable2.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