Free Statistics

of Irreproducible Research!

Author's title

Author*The author of this computation has been verified*
R Software Modulerwasp_regression_trees1.wasp
Title produced by softwareRecursive Partitioning (Regression Trees)
Date of computationThu, 22 Dec 2011 10:00:26 -0500
Cite this page as followsStatistical Computations at FreeStatistics.org, Office for Research Development and Education, URL https://freestatistics.org/blog/index.php?v=date/2011/Dec/22/t1324566097r17ihgkxexusqvq.htm/, Retrieved Fri, 03 May 2024 09:54:29 +0000
Statistical Computations at FreeStatistics.org, Office for Research Development and Education, URL https://freestatistics.org/blog/index.php?pk=159551, Retrieved Fri, 03 May 2024 09:54:29 +0000
QR Codes:

Original text written by user:
IsPrivate?No (this computation is public)
User-defined keywords
Estimated Impact64
Family? (F = Feedback message, R = changed R code, M = changed R Module, P = changed Parameters, D = changed Data)
-       [Recursive Partitioning (Regression Trees)] [] [2011-12-22 15:00:26] [3eda06f9e914bde86f40a764ca976328] [Current]
Feedback Forum

Post a new message
Dataseries X:
101645	63	371	88	0	20	11	44	38
101011	34	238	41	0	30	13	52	39
7176	17	70	1	0	0	0	0	0
96560	76	503	129	0	42	17	54	38
175824	107	910	107	0	57	20	80	77
341570	168	1276	190	1	94	21	80	78
103597	43	379	66	1	27	16	60	49
112611	41	248	36	0	46	20	78	73
85574	34	351	71	0	37	21	78	36
220801	75	720	105	1	51	18	72	63
92661	61	508	133	1	40	17	45	41
133328	55	506	79	0	56	20	78	56
61361	77	451	51	0	27	12	39	25
125930	75	699	207	4	37	17	68	65
82316	32	245	34	4	27	10	39	38
102010	53	370	66	3	28	13	50	44
101523	42	316	76	0	59	22	88	87
41566	35	229	42	5	0	9	36	27
99923	66	617	115	0	44	25	99	80
22648	19	184	44	0	12	13	39	28
46698	45	274	35	0	14	13	52	33
131698	65	502	74	0	60	19	75	59
91735	35	382	103	0	7	18	71	49
79863	37	438	134	1	29	22	71	49
108043	62	466	29	1	45	14	54	38
98866	18	397	140	0	25	13	49	39
120445	118	457	72	0	36	16	59	56
116048	64	230	45	0	50	20	75	50
250047	81	651	58	0	41	18	71	61
136084	30	671	69	0	27	13	51	41
92499	32	319	57	0	25	18	71	55
135781	31	433	98	2	45	14	47	44
74408	67	434	61	4	29	7	28	21
81240	66	503	89	0	58	17	68	50
133368	36	535	54	1	37	16	64	57
98146	40	459	37	0	15	17	68	48
79619	43	426	123	3	42	11	40	32
59194	31	288	247	6	7	24	80	68
139942	42	498	46	0	54	22	88	87
118612	46	454	72	2	54	12	48	43
72880	33	376	41	0	14	19	76	67
65475	18	225	24	2	16	13	51	46
99643	55	555	45	1	33	17	67	46
71965	35	252	33	1	32	15	59	56
77272	59	208	27	2	21	16	61	48
49289	19	130	36	1	15	24	76	44
135131	66	481	87	0	38	15	60	60
108446	60	389	90	1	22	17	68	65
89746	36	565	114	3	28	18	71	55
44296	25	173	31	0	10	20	76	38
77648	47	278	45	0	31	16	62	52
181528	54	609	69	0	32	16	61	60
134019	53	422	51	0	32	18	67	54
124064	40	445	34	1	43	22	88	86
92630	40	387	60	4	27	8	30	24
121848	39	339	45	0	37	17	64	52
52915	14	181	54	0	20	18	68	49
81872	45	245	25	0	32	16	64	61
58981	36	384	38	7	0	23	91	61
53515	28	212	52	2	5	22	88	81
60812	44	399	67	0	26	13	52	43
56375	30	229	74	7	10	13	49	40
65490	22	224	38	3	27	16	62	40
80949	17	203	30	0	11	16	61	56
76302	31	333	26	0	29	20	76	68
104011	55	384	67	6	25	22	88	79
98104	54	636	132	2	55	17	66	47
67989	21	185	42	0	23	18	71	57
30989	14	93	35	0	5	17	68	41
135458	81	581	118	3	43	12	48	29
73504	35	248	68	0	23	7	25	3
63123	43	304	43	1	34	17	68	60
61254	46	344	76	1	36	14	41	30
74914	30	407	64	0	35	23	90	79
31774	23	170	48	1	0	17	66	47
81437	38	312	64	0	37	14	54	40
87186	54	507	56	0	28	15	59	48
50090	20	224	71	0	16	17	60	36
65745	53	340	75	0	26	21	77	42
56653	45	168	39	0	38	18	68	49
158399	39	443	42	0	23	18	72	57
46455	20	204	39	0	22	17	67	12
73624	24	367	93	0	30	17	64	40
38395	31	210	38	0	16	16	63	43
91899	35	335	60	0	18	15	59	33
139526	151	364	71	0	28	21	84	77
52164	52	178	52	0	32	16	64	43
51567	30	206	27	2	21	14	56	45
70551	31	279	59	0	23	15	54	47
84856	29	387	40	1	29	17	67	43
102538	57	490	79	1	50	15	58	45
86678	40	238	44	0	12	15	59	50
85709	44	343	65	0	21	10	40	35
34662	25	232	10	0	18	6	22	7
150580	77	530	124	0	27	22	83	71
99611	35	291	81	0	41	21	81	67
19349	11	67	15	0	13	1	2	0
99373	63	397	92	1	12	18	72	62
86230	44	467	42	0	21	17	61	54
30837	19	178	10	0	8	4	15	4
31706	13	175	24	0	26	10	32	25
89806	42	299	64	0	27	16	62	40
62088	38	154	45	1	13	16	58	38
40151	29	106	22	0	16	9	36	19
27634	20	189	56	0	2	16	59	17
76990	27	194	94	0	42	17	68	67
37460	20	135	19	0	5	7	21	14
54157	19	201	35	0	37	15	55	30
49862	37	207	32	0	17	14	54	54
84337	26	280	35	0	38	14	55	35
64175	42	260	48	0	37	18	72	59
59382	49	227	49	0	29	12	41	24
119308	30	239	48	0	32	16	61	58
76702	49	333	62	0	35	21	67	42
103425	67	428	96	1	17	19	76	46
70344	28	230	45	0	20	16	64	61
43410	19	292	63	0	7	1	3	3
104838	49	350	71	1	46	16	63	52
62215	27	186	26	0	24	10	40	25
69304	30	326	48	6	40	19	69	40
53117	22	155	29	3	3	12	48	32
19764	12	75	19	1	10	2	8	4
86680	31	361	45	2	37	14	52	49
84105	20	261	45	0	17	17	66	63
77945	20	299	67	0	28	19	76	67
89113	39	300	30	0	19	14	43	32
91005	29	450	36	3	29	11	39	23
40248	16	183	34	1	8	4	14	7
64187	27	238	36	0	10	16	61	54
50857	21	165	34	0	15	20	71	37
56613	19	234	37	1	15	12	44	35
62792	35	176	46	0	28	15	60	51
72535	14	329	44	0	17	16	64	39




Summary of computational transaction
Raw Inputview raw input (R code)
Raw Outputview raw output of R engine
Computing time3 seconds
R Server'Gwilym Jenkins' @ jenkins.wessa.net
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'.

\begin{tabular}{lllllllll}
\hline
Summary of computational transaction \tabularnewline
Raw Input & view raw input (R code)  \tabularnewline
Raw Output & view raw output of R engine  \tabularnewline
Computing time & 3 seconds \tabularnewline
R Server & 'Gwilym Jenkins' @ jenkins.wessa.net \tabularnewline
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'.
\tabularnewline \hline \end{tabular} %Source: https://freestatistics.org/blog/index.php?pk=159551&T=0

[TABLE]
[ROW][C]Summary of computational transaction[/C][/ROW]
[ROW][C]Raw Input[/C][C]view raw input (R code) [/C][/ROW]
[ROW][C]Raw Output[/C][C]view raw output of R engine [/C][/ROW]
[ROW][C]Computing time[/C][C]3 seconds[/C][/ROW]
[ROW][C]R Server[/C][C]'Gwilym Jenkins' @ jenkins.wessa.net[/C][/ROW]
[ROW][C]R Framework error message[/C][C]
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'.
[/C][/ROW] [/TABLE] Source: https://freestatistics.org/blog/index.php?pk=159551&T=0

Globally Unique Identifier (entire table): ba.freestatistics.org/blog/index.php?pk=159551&T=0

As an alternative you can also use a QR Code:  

The GUIDs for individual cells are displayed in the table below:

Summary of computational transaction
Raw Inputview raw input (R code)
Raw Outputview raw output of R engine
Computing time3 seconds
R Server'Gwilym Jenkins' @ jenkins.wessa.net
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'.







Confusion Matrix (predicted in columns / actuals in rows)
C1C2
C14126
C2165

\begin{tabular}{lllllllll}
\hline
Confusion Matrix (predicted in columns / actuals in rows) \tabularnewline
 & C1 & C2 \tabularnewline
C1 & 41 & 26 \tabularnewline
C2 & 1 & 65 \tabularnewline
\hline
\end{tabular}
%Source: https://freestatistics.org/blog/index.php?pk=159551&T=1

[TABLE]
[ROW][C]Confusion Matrix (predicted in columns / actuals in rows)[/C][/ROW]
[ROW][C][/C][C]C1[/C][C]C2[/C][/ROW]
[ROW][C]C1[/C][C]41[/C][C]26[/C][/ROW]
[ROW][C]C2[/C][C]1[/C][C]65[/C][/ROW]
[/TABLE]
Source: https://freestatistics.org/blog/index.php?pk=159551&T=1

Globally Unique Identifier (entire table): ba.freestatistics.org/blog/index.php?pk=159551&T=1

As an alternative you can also use a QR Code:  

The GUIDs for individual cells are displayed in the table below:

Confusion Matrix (predicted in columns / actuals in rows)
C1C2
C14126
C2165



Parameters (Session):
Parameters (R input):
par1 = 1 ; par2 = quantiles ; par3 = 2 ; 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')
}