Home » date » 2010 » Dec » 12 »

RP personal standards

*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: Sun, 12 Dec 2010 16:02:19 +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/12/t1292169618g9fdjzjpg262ulv.htm/, Retrieved Sun, 12 Dec 2010 17:00: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/12/t1292169618g9fdjzjpg262ulv.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 «
1 26 9 15 6 25 25 13 1 20 9 15 6 25 24 16 1 21 9 14 13 19 21 19 0 31 14 10 8 18 23 15 1 21 8 10 7 18 17 14 1 18 8 12 9 22 19 13 1 26 11 18 5 29 18 19 1 22 10 12 8 26 27 15 1 22 9 14 9 25 23 14 1 29 15 18 11 23 23 15 0 15 14 9 8 23 29 16 1 16 11 11 11 23 21 16 0 24 14 11 12 24 26 16 1 17 6 17 8 30 25 17 0 19 20 8 7 19 25 15 0 22 9 16 9 24 23 15 1 31 10 21 12 32 26 20 0 28 8 24 20 30 20 18 1 38 11 21 7 29 29 16 0 26 14 14 8 17 24 16 1 25 11 7 8 25 23 19 1 25 16 18 16 26 24 16 0 29 14 18 10 26 30 17 1 28 11 13 6 25 22 17 0 15 11 11 8 23 22 16 1 18 12 13 9 21 13 15 0 21 9 13 9 19 24 14 1 25 7 18 11 35 17 15 0 23 13 14 12 19 24 12 1 23 10 12 8 20 21 14 1 19 9 9 7 21 23 16 0 18 9 12 8 21 24 14 0 18 13 8 9 24 24 7 0 26 16 5 4 23 24 10 0 18 12 10 8 19 23 14 1 18 6 11 8 17 26 16 0 28 14 11 8 24 24 16 0 17 14 12 6 15 21 16 1 29 10 12 8 25 23 14 0 12 4 15 4 27 28 20 1 28 12 16 14 27 22 14 1 20 14 14 10 18 24 11 1 17 9 17 9 25 21 15 1 17 9 13 6 22 23 16 0 20 10 10 8 26 23 14 1 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 time10 seconds
R Server'George Udny Yule' @ 72.249.76.132


Goodness of Fit
Correlation0.5794
R-squared0.3357
RMSE3.4145


Actuals, Predictions, and Residuals
#ActualsForecastsResiduals
12525.2380952380952-0.238095238095237
22521.3253.675
31921.325-2.325
41825.2380952380952-7.23809523809524
51817.15384615384620.846153846153847
62221.3250.675000000000001
72925.23809523809523.76190476190476
82621.3254.675
92521.3253.675
102325.2380952380952-2.23809523809524
112321.3251.675
122321.3251.675
132421.3252.675
1430255
151921.325-2.325
162421.3252.675
173225.23809523809526.76190476190476
183025.23809523809524.76190476190476
192925.23809523809523.76190476190476
201725.2380952380952-8.23809523809524
212525.2380952380952-0.238095238095237
222625.23809523809520.761904761904763
232625.23809523809520.761904761904763
242525.2380952380952-0.238095238095237
252321.3251.675
262117.15384615384623.84615384615385
271921.325-2.325
283525.23809523809529.76190476190476
291921.325-2.325
302021.325-1.325
312121.325-0.324999999999999
322121.325-0.324999999999999
332421.3252.675
342325.2380952380952-2.23809523809524
351921.325-2.325
361725-8
372425.2380952380952-1.23809523809524
381521.325-6.325
392525.2380952380952-0.238095238095237
4027252
412725.23809523809521.76190476190476
421821.325-3.325
432521.3253.675
442221.3250.675000000000001
452621.3254.675
462325.2380952380952-2.23809523809524
471621.325-5.325
482721.3255.675
492521.3253.675
501417.1538461538462-3.15384615384615
511917.15384615384621.84615384615385
522025.2380952380952-5.23809523809524
531621.325-5.325
541821.325-3.325
552221.3250.675000000000001
562121.325-0.324999999999999
572221.3250.675000000000001
582221.3250.675000000000001
593225.23809523809526.76190476190476
602325.2380952380952-2.23809523809524
613125.23809523809525.76190476190476
621821.325-3.325
632321.3251.675
642625.23809523809520.761904761904763
652421.3252.675
661921.325-2.325
671417.1538461538462-3.15384615384615
682021.325-1.325
692225-3
702421.3252.675
712521.3253.675
722125.2380952380952-4.23809523809524
732825.23809523809522.76190476190476
742421.3252.675
752021.325-1.325
762121.325-0.324999999999999
772321.3251.675
781317.1538461538462-4.15384615384615
792421.3252.675
802121.325-0.324999999999999
812125.2380952380952-4.23809523809524
821721.325-4.325
831421.325-7.325
8429254
852521.3253.675
861617.1538461538462-1.15384615384615
872521.3253.675
882521.3253.675
892121.325-0.324999999999999
902321.3251.675
912225.2380952380952-3.23809523809524
921925-6
932425.2380952380952-1.23809523809524
942625.23809523809520.761904761904763
952521.3253.675
962021.325-1.325
972225.2380952380952-3.23809523809524
981417.1538461538462-3.15384615384615
992021.325-1.325
1003225.23809523809526.76190476190476
1012117.15384615384623.84615384615385
1022221.3250.675000000000001
1032825.23809523809522.76190476190476
1042525.2380952380952-0.238095238095237
1051721.325-4.325
1062121.325-0.324999999999999
1072321.3251.675
1082725.23809523809521.76190476190476
1092221.3250.675000000000001
1101921.325-2.325
1112021.325-1.325
1121725.2380952380952-8.23809523809524
1132421.3252.675
1142121.325-0.324999999999999
1152121.325-0.324999999999999
1162425.2380952380952-1.23809523809524
1171921.325-2.325
1182221.3250.675000000000001
11926251
1201717.1538461538462-0.153846153846153
1211721.325-4.325
1221921.325-2.325
1231517.1538461538462-2.15384615384615
1241721.325-4.325
1252725.23809523809521.76190476190476
1261921.325-2.325
1272121.325-0.324999999999999
1282521.3253.675
1291925.2380952380952-6.23809523809524
1302225.2380952380952-3.23809523809524
1312021.325-1.325
1321521.325-6.325
1332021.325-1.325
1342925.23809523809523.76190476190476
1351917.15384615384621.84615384615385
1362925.23809523809523.76190476190476
1372421.3252.675
1382321.3251.675
1392221.3250.675000000000001
1402325.2380952380952-2.23809523809524
1412217.15384615384624.84615384615385
14229254
14326251
1442121.325-0.324999999999999
 
Charts produced by software:
http://www.freestatistics.org/blog/date/2010/Dec/12/t1292169618g9fdjzjpg262ulv/2r2iv1292169728.png (open in new window)
http://www.freestatistics.org/blog/date/2010/Dec/12/t1292169618g9fdjzjpg262ulv/2r2iv1292169728.ps (open in new window)


http://www.freestatistics.org/blog/date/2010/Dec/12/t1292169618g9fdjzjpg262ulv/3r2iv1292169728.png (open in new window)
http://www.freestatistics.org/blog/date/2010/Dec/12/t1292169618g9fdjzjpg262ulv/3r2iv1292169728.ps (open in new window)


http://www.freestatistics.org/blog/date/2010/Dec/12/t1292169618g9fdjzjpg262ulv/4jbzy1292169728.png (open in new window)
http://www.freestatistics.org/blog/date/2010/Dec/12/t1292169618g9fdjzjpg262ulv/4jbzy1292169728.ps (open in new window)


 
Parameters (Session):
par1 = 6 ; par2 = none ; par3 = 3 ; par4 = no ;
 
Parameters (R input):
par1 = 6 ; par2 = none ; par3 = 3 ; 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