Send output to:
Browser Blue - Charts White
Browser Black/White
CSV
Data X:
2 7 41 38 13 12 14 12 53 32 2 5 39 32 16 11 18 11 86 51 2 5 30 35 19 15 11 14 66 42 1 5 31 33 15 6 12 12 67 41 2 8 34 37 14 13 16 21 76 46 2 6 35 29 13 10 18 12 78 47 2 5 39 31 19 12 14 22 53 37 2 6 34 36 15 14 14 11 80 49 2 5 36 35 14 12 15 10 74 45 2 4 37 38 15 6 15 13 76 47 1 6 38 31 16 10 17 10 79 49 2 5 36 34 16 12 19 8 54 33 1 5 38 35 16 12 10 15 67 42 2 6 39 38 16 11 16 14 54 33 2 7 33 37 17 15 18 10 87 53 1 6 32 33 15 12 14 14 58 36 1 7 36 32 15 10 14 14 75 45 2 6 38 38 20 12 17 11 88 54 1 8 39 38 18 11 14 10 64 41 2 7 32 32 16 12 16 13 57 36 1 5 32 33 16 11 18 7 66 41 2 5 31 31 16 12 11 14 68 44 2 7 39 38 19 13 14 12 54 33 2 7 37 39 16 11 12 14 56 37 1 5 39 32 17 9 17 11 86 52 2 4 41 32 17 13 9 9 80 47 1 10 36 35 16 10 16 11 76 43 2 6 33 37 15 14 14 15 69 44 2 5 33 33 16 12 15 14 78 45 1 5 34 33 14 10 11 13 67 44 2 5 31 28 15 12 16 9 80 49 1 5 27 32 12 8 13 15 54 33 2 6 37 31 14 10 17 10 71 43 2 5 34 37 16 12 15 11 84 54 1 5 34 30 14 12 14 13 74 42 1 5 32 33 7 7 16 8 71 44 1 5 29 31 10 6 9 20 63 37 1 5 36 33 14 12 15 12 71 43 2 5 29 31 16 10 17 10 76 46 1 5 35 33 16 10 13 10 69 42 1 5 37 32 16 10 15 9 74 45 2 7 34 33 14 12 16 14 75 44 1 5 38 32 20 15 16 8 54 33 1 6 35 33 14 10 12 14 52 31 2 7 38 28 14 10 12 11 69 42 2 7 37 35 11 12 11 13 68 40 2 5 38 39 14 13 15 9 65 43 2 5 33 34 15 11 15 11 75 46 2 4 36 38 16 11 17 15 74 42 1 5 38 32 14 12 13 11 75 45 2 4 32 38 16 14 16 10 72 44 1 5 32 30 14 10 14 14 67 40 1 5 32 33 12 12 11 18 63 37 2 7 34 38 16 13 12 14 62 46 1 5 32 32 9 5 12 11 63 36 2 5 37 32 14 6 15 12 76 47 2 6 39 34 16 12 16 13 74 45 2 4 29 34 16 12 15 9 67 42 1 6 37 36 15 11 12 10 73 43 2 6 35 34 16 10 12 15 70 43 1 5 30 28 12 7 8 20 53 32 1 7 38 34 16 12 13 12 77 45 2 6 34 35 16 14 11 12 77 45 2 8 31 35 14 11 14 14 52 31 2 7 34 31 16 12 15 13 54 33 1 5 35 37 17 13 10 11 80 49 2 6 36 35 18 14 11 17 66 42 1 6 30 27 18 11 12 12 73 41 2 5 39 40 12 12 15 13 63 38 1 5 35 37 16 12 15 14 69 42 1 5 38 36 10 8 14 13 67 44 2 5 31 38 14 11 16 15 54 33 2 4 34 39 18 14 15 13 81 48 1 6 38 41 18 14 15 10 69 40 1 6 34 27 16 12 13 11 84 50 2 6 39 30 17 9 12 19 80 49 2 6 37 37 16 13 17 13 70 43 2 7 34 31 16 11 13 17 69 44 1 5 28 31 13 12 15 13 77 47 1 7 37 27 16 12 13 9 54 33 1 6 33 36 16 12 15 11 79 46 1 5 37 38 20 12 16 10 30 0 2 5 35 37 16 12 15 9 71 45 1 4 37 33 15 12 16 12 73 43 2 8 32 34 15 11 15 12 72 44 2 8 33 31 16 10 14 13 77 47 1 5 38 39 14 9 15 13 75 45 2 5 33 34 16 12 14 12 69 42 2 6 29 32 16 12 13 15 54 33 2 4 33 33 15 12 7 22 70 43 2 5 31 36 12 9 17 13 73 46 2 5 36 32 17 15 13 15 54 33 2 5 35 41 16 12 15 13 77 46 2 5 32 28 15 12 14 15 82 48 2 6 29 30 13 12 13 10 80 47 2 6 39 36 16 10 16 11 80 47 2 5 37 35 16 13 12 16 69 43 2 6 35 31 16 9 14 11 78 46 1 5 37 34 16 12 17 11 81 48 1 7 32 36 14 10 15 10 76 46 2 5 38 36 16 14 17 10 76 45 1 6 37 35 16 11 12 16 73 45 2 6 36 37 20 15 16 12 85 52 1 6 32 28 15 11 11 11 66 42 2 4 33 39 16 11 15 16 79 47 1 5 40 32 13 12 9 19 68 41 2 5 38 35 17 12 16 11 76 47 1 7 41 39 16 12 15 16 71 43 1 6 36 35 16 11 10 15 54 33 2 9 43 42 12 7 10 24 46 30 2 6 30 34 16 12 15 14 82 49 2 6 31 33 16 14 11 15 74 44 2 5 32 41 17 11 13 11 88 55 1 6 32 33 13 11 14 15 38 11 2 5 37 34 12 10 18 12 76 47 1 8 37 32 18 13 16 10 86 53 2 7 33 40 14 13 14 14 54 33 2 5 34 40 14 8 14 13 70 44 2 7 33 35 13 11 14 9 69 42 2 6 38 36 16 12 14 15 90 55 2 6 33 37 13 11 12 15 54 33 2 9 31 27 16 13 14 14 76 46 2 7 38 39 13 12 15 11 89 54 2 6 37 38 16 14 15 8 76 47 2 5 33 31 15 13 15 11 73 45 2 5 31 33 16 15 13 11 79 47 1 6 39 32 15 10 17 8 90 55 2 6 44 39 17 11 17 10 74 44 2 7 33 36 15 9 19 11 81 53 2 5 35 33 12 11 15 13 72 44 1 5 32 33 16 10 13 11 71 42 1 5 28 32 10 11 9 20 66 40 2 6 40 37 16 8 15 10 77 46 1 4 27 30 12 11 15 15 65 40 1 5 37 38 14 12 15 12 74 46 2 7 32 29 15 12 16 14 82 53 1 5 28 22 13 9 11 23 54 33 1 7 34 35 15 11 14 14 63 42 2 7 30 35 11 10 11 16 54 35 2 6 35 34 12 8 15 11 64 40 1 5 31 35 8 9 13 12 69 41 2 8 32 34 16 8 15 10 54 33 1 5 30 34 15 9 16 14 84 51 2 5 30 35 17 15 14 12 86 53 1 5 31 23 16 11 15 12 77 46 2 6 40 31 10 8 16 11 89 55 2 4 32 27 18 13 16 12 76 47 1 5 36 36 13 12 11 13 60 38 1 5 32 31 16 12 12 11 75 46 1 7 35 32 13 9 9 19 73 46 2 6 38 39 10 7 16 12 85 53 2 7 42 37 15 13 13 17 79 47 1 10 34 38 16 9 16 9 71 41 2 6 35 39 16 6 12 12 72 44 2 8 35 34 14 8 9 19 69 43 2 4 33 31 10 8 13 18 78 51 2 5 36 32 17 15 13 15 54 33 2 6 32 37 13 6 14 14 69 43 2 7 33 36 15 9 19 11 81 53 2 7 34 32 16 11 13 9 84 51 2 6 32 35 12 8 12 18 84 50 2 6 34 36 13 8 13 16 69 46
Names of X columns:
Gender Age Connected Separate Learning Software Happiness Depression Belonging Belonging_Final
Endogenous Variable (Column Number)
Categorization
quantiles
none
quantiles
hclust
equal
Number of categories (only if categorization<>none)
Cross-Validation? (only if categorization<>none)
no
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