Send output to:
Browser Blue - Charts White
Browser Black/White
CSV
Data X:
22 1 27 5 26 49 35 23 1 36 4 25 45 34 27 1 25 4 17 54 13 19 1 27 3 37 36 35 15 2 25 3 35 36 28 29 2 44 3 15 53 32 25 1 50 4 27 46 35 25 1 41 4 36 42 36 21 1 48 5 25 41 27 22 2 43 4 30 45 29 22 2 47 2 27 47 27 24 2 41 3 33 42 28 22 1 44 2 29 45 29 23 2 47 5 30 40 28 19 2 40 3 25 45 30 19 2 46 3 23 40 25 21 1 28 3 26 42 15 20 1 56 3 24 45 33 23 2 49 4 35 47 31 11 2 25 4 39 31 37 21 2 41 4 23 46 37 19 2 26 3 32 34 34 21 1 50 5 29 43 32 23 1 47 4 26 45 21 19 1 52 2 21 42 25 22 2 37 5 35 51 32 19 2 41 3 23 44 28 23 1 45 4 21 47 22 29 2 26 4 28 47 25 27 1 NA 3 30 41 26 18 1 52 4 21 44 34 30 1 46 2 29 51 34 26 1 58 3 28 46 36 20 1 54 5 19 47 36 22 1 29 3 26 46 26 20 2 50 3 33 38 26 21 1 43 2 34 50 34 18 2 30 3 33 48 33 21 2 47 2 40 36 31 27 1 45 3 24 51 33 NA 2 48 1 35 35 22 18 2 48 3 35 49 29 24 2 26 4 32 38 24 24 1 46 5 20 47 37 17 2 NA 3 35 36 32 22 2 50 3 35 47 23 21 1 25 4 21 46 29 23 1 47 2 33 43 35 19 2 47 2 40 53 20 22 1 41 3 22 55 28 19 2 45 2 35 39 26 24 2 41 4 20 55 36 22 2 45 5 28 41 26 26 2 40 3 46 33 33 22 1 29 4 18 52 25 23 2 34 5 22 42 29 27 1 45 5 20 56 32 21 2 52 3 25 46 35 16 2 41 4 31 33 24 21 2 48 3 21 51 31 18 2 45 3 23 46 29 25 1 54 2 26 46 27 20 2 25 3 34 50 29 24 2 26 4 31 46 29 20 1 28 4 23 51 27 24 2 50 4 31 48 34 23 2 48 4 26 44 32 23 2 51 3 36 38 31 22 2 53 3 28 42 31 22 1 37 3 34 39 31 20 1 56 2 25 45 16 14 1 43 3 33 31 25 21 1 34 3 46 29 27 23 1 42 3 24 48 32 17 2 32 3 32 38 28 25 2 31 5 33 55 25 10 1 46 3 42 32 25 25 2 30 5 17 51 36 23 2 47 4 36 53 36 27 2 33 4 40 47 36 16 1 25 4 30 45 27 19 1 25 5 19 33 29 23 2 21 4 33 49 32 19 2 36 5 35 46 29 19 2 50 3 23 42 31 26 2 48 3 15 56 34 19 2 48 2 38 35 27 22 1 25 3 37 40 28 21 1 48 4 23 44 32 22 2 49 5 41 46 33 20 1 27 5 34 46 29 20 1 28 3 38 39 32 20 2 43 2 45 35 35 21 2 48 3 27 48 33 21 2 48 4 46 42 27 14 1 25 1 26 39 16 28 2 49 4 44 39 32 24 1 26 3 36 41 26 24 1 51 3 20 52 32 24 2 25 4 44 45 38 19 1 29 3 27 42 24 19 1 29 4 27 44 26 14 1 43 2 41 33 19 29 2 46 3 30 42 37 22 1 44 3 33 46 25 21 1 25 3 37 45 24 15 1 51 2 30 40 23 23 1 42 5 20 48 28 24 2 53 5 44 32 38 20 1 25 4 20 53 28 25 2 49 2 33 39 28 25 1 51 3 31 45 26 19 2 20 3 23 36 21 23 2 44 3 33 38 35 22 2 38 4 33 49 31 19 1 46 5 32 46 34 24 2 42 4 25 43 30 21 1 29 NA 22 37 30 19 2 46 4 16 48 24 21 2 49 2 36 45 27 18 2 51 3 35 32 26 24 1 38 3 25 46 30 7 1 41 1 27 20 15 24 2 47 3 32 42 28 24 2 44 3 36 45 34 23 2 47 3 51 29 29 24 2 46 3 30 51 26 27 1 44 4 20 55 31 20 2 28 3 29 50 28 20 2 47 4 26 44 33 22 2 28 4 20 41 32 19 1 41 5 40 40 33 18 2 45 4 29 47 31 14 2 46 4 32 42 37 24 1 46 4 33 40 27 29 2 22 3 32 51 19 25 2 33 3 34 43 27 24 1 41 4 24 45 31 20 2 47 5 25 41 38 18 1 25 3 41 41 22 25 2 42 3 39 37 35 21 2 47 3 21 46 35 21 2 50 3 38 38 30 21 1 55 5 28 39 41 23 1 21 3 37 45 25 18 1 NA 3 26 46 28 23 1 52 3 30 39 45 13 2 49 4 25 21 21 23 2 46 4 38 31 33 17 1 NA 4 31 35 25 24 2 45 3 31 49 29 16 2 52 3 27 40 31 23 1 NA 3 21 45 29 20 2 40 4 26 46 31 24 2 49 4 37 45 31 15 1 38 5 28 34 25 20 1 32 5 29 41 27 27 2 46 4 33 43 26 27 2 32 3 41 45 26 19 2 41 3 19 48 23 22 2 43 3 37 43 27 16 1 44 4 36 45 24 21 1 47 5 27 45 35 18 2 28 3 33 34 24 22 1 52 1 29 40 32 18 1 27 2 42 40 24 24 2 45 5 27 55 24 24 1 27 4 47 44 38 19 1 25 4 17 44 36 26 1 28 4 34 48 24 28 1 25 3 32 51 18 23 1 52 4 25 49 34 22 1 44 3 27 33 23 20 2 43 3 37 43 35 20 2 47 4 34 44 22 27 2 52 4 27 44 34 19 2 40 2 37 41 28 23 1 42 3 32 45 34 19 1 45 5 26 44 32 21 1 45 2 29 44 24 13 1 50 5 28 40 34 18 1 49 3 19 48 33 19 1 52 2 46 49 33 23 2 48 3 31 46 29 30 2 51 3 42 49 38 22 2 49 4 33 55 24 23 2 31 4 39 51 25 22 2 43 3 27 46 37 22 2 31 3 35 37 33 23 2 28 4 23 43 30 27 2 43 4 32 41 22 23 2 31 3 22 45 28 18 2 51 3 17 39 24 24 2 58 4 35 38 33 19 2 25 5 34 41 37
Names of X columns:
Behoefte_affiliatie geslacht leeftijd opleiding Neuroticisme Extraversie Openheid
Endogenous Variable (Column Number)
Categorization
none
quantiles
hclust
equal
Number of categories (only if categorization<>none)
Cross-Validation? (only if categorization<>none)
no
yes
Chart options
R Code
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') }
Compute
Summary of computational transaction
Raw Input
view raw input (R code)
Raw Output
view raw output of R engine
Computing time
2 seconds
R Server
Big Analytics Cloud Computing Center
Click here to blog (archive) this computation