Free Statistics

of Irreproducible Research!

Author's title

Author*The author of this computation has been verified*
R Software Module--
Title produced by softwareRecursive Partitioning (Regression Trees)
Date of computationThu, 22 Dec 2011 05:33:08 -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/t1324549998ev0iabx1nw7pzo6.htm/, Retrieved Fri, 03 May 2024 06:09:24 +0000
Statistical Computations at FreeStatistics.org, Office for Research Development and Education, URL https://freestatistics.org/blog/index.php?pk=159275, Retrieved Fri, 03 May 2024 06:09:24 +0000
QR Codes:

Original text written by user:
IsPrivate?No (this computation is public)
User-defined keywords
Estimated Impact101
Family? (F = Feedback message, R = changed R code, M = changed R Module, P = changed Parameters, D = changed Data)
-     [Recursive Partitioning (Regression Trees)] [RP woth categ] [2011-12-18 15:49:01] [9631d8669dd1906475401d4d7f07aac5]
-   PD  [Recursive Partitioning (Regression Trees)] [Recursive partiti...] [2011-12-21 16:53:54] [2c6fcdc40ef3b1a27716d75d6f478b32]
- RM        [Recursive Partitioning (Regression Trees)] [] [2011-12-22 10:33:08] [8a4496bd93dae12a8bdfa51e6ea7daab] [Current]
Feedback Forum

Post a new message
Dataseries X:
158258	0	48	18	20465	23975
186930	1	53	20	33629	85634
7215	0	0	0	1423	1929
129098	0	51	27	25629	36294
230632	0	76	31	54002	72255
508313	1	128	36	151036	189748
180745	1	62	23	33287	61834
185559	0	83	30	31172	68167
154581	0	55	30	28113	38462
290658	1	67	26	57803	101219
121844	2	50	24	49830	43270
184039	0	77	30	52143	76183
100324	0	46	22	21055	31476
209427	4	79	25	47007	62157
168265	4	56	18	28735	46261
154593	3	54	22	59147	50063
142018	0	81	33	78950	64483
78604	5	6	15	13497	2341
167047	0	74	34	46154	48149
27997	0	13	18	53249	12743
73019	0	22	15	10726	18743
241082	0	99	30	83700	97057
195820	0	38	25	40400	17675
141899	1	59	34	33797	33106
145433	1	50	21	36205	53311
183744	0	50	21	30165	42754
202232	0	61	25	58534	59056
190230	0	81	31	44663	101621
354924	0	60	31	92556	118120
192399	0	52	20	40078	79572
182286	0	61	28	34711	42744
181590	2	60	22	31076	65931
133801	4	53	17	74608	38575
233686	0	76	25	58092	28795
219428	1	63	24	42009	94440
0	0	0	0	0	0
223044	0	54	28	36022	38229
100129	3	44	14	23333	31972
136733	9	36	35	53349	40071
249965	0	83	34	92596	132480
242379	2	105	22	49598	62797
145794	0	37	34	44093	40429
96404	2	25	23	84205	45545
195891	1	64	24	63369	57568
117156	2	55	26	60132	39019
157787	2	41	22	37403	53866
81293	1	23	35	24460	38345
224049	0	67	24	46456	50210
223789	1	54	31	66616	80947
160344	8	68	26	41554	43461
48188	0	12	22	22346	14812
152206	0	86	21	30874	37819
294283	0	74	27	68701	102738
235223	0	56	30	35728	54509
195583	1	67	33	29010	62956
145942	8	40	11	23110	55411
208834	0	53	26	38844	50611
93764	1	26	26	27084	26692
151985	0	67	23	35139	60056
190545	10	36	38	57476	25155
148922	6	50	31	33277	42840
132856	0	48	20	31141	39358
126107	11	46	19	61281	47241
112718	3	53	26	25820	49611
160930	0	27	26	23284	41833
99184	0	38	33	35378	48930
182022	8	69	36	74990	110600
138708	2	93	25	29653	52235
114408	0	59	24	64622	53986
31970	0	5	21	4157	4105
225558	3	53	19	29245	59331
137011	1	40	12	50008	47796
113612	2	72	30	52338	38302
108641	1	51	21	13310	14063
162203	0	81	34	92901	54414
100098	2	27	32	10956	9903
174768	1	94	28	34241	53987
158459	0	71	28	75043	88937
80934	0	20	21	21152	21928
84971	0	34	31	42249	29487
80545	0	54	26	42005	35334
287191	0	49	29	41152	57596
62974	1	26	23	14399	29750
130982	0	47	25	28263	41029
75555	0	35	22	17215	12416
162154	0	32	26	48140	51158
226638	0	55	33	62897	79935
115019	0	58	24	22883	26552
105038	7	44	24	41622	25807
155537	0	45	21	40715	50620
153133	5	49	28	65897	61467
165577	1	72	27	76542	65292
151517	0	39	25	37477	55516
133686	0	28	15	53216	42006
58128	0	24	13	40911	26273
245196	0	52	36	57021	90248
195576	0	96	24	73116	61476
19349	0	13	1	3895	9604
225371	3	38	24	46609	45108
152796	0	41	31	29351	47232
59117	0	24	4	2325	3439
91762	0	54	21	31747	30553
127987	0	59	23	32665	24751
113552	1	28	23	19249	34458
85338	1	36	12	15292	24649
27676	0	2	16	5842	2342
147984	0	83	29	33994	52739
122417	0	29	26	13018	6245
0	0	0	0	0	0
91529	0	46	25	98177	35381
107205	0	25	21	37941	19595
144664	0	51	23	31032	50848
136540	0	59	21	32683	39443
76656	0	36	21	34545	27023
3616	0	0	0	0	0
0	0	0	0	0	0
183065	0	40	23	27525	61022
144636	0	68	33	66856	63528
159104	2	28	30	28549	34835
113273	0	36	23	38610	37172
43410	0	7	1	2781	13
175774	1	70	29	41211	62548
95401	0	30	18	22698	31334
118893	8	59	32	41194	20839
60493	3	3	12	32689	5084
19764	1	10	2	5752	9927
164062	3	46	21	26757	53229
132696	0	34	28	22527	29877
155367	0	54	29	44810	37310
11796	0	1	2	0	0
10674	0	0	0	0	0
142261	0	39	18	100674	50067
6836	0	0	1	0	0
154206	6	48	21	57786	47708
5118	0	5	0	0	0
40248	1	8	4	5444	6012
0	0	0	0	0	0
122641	0	38	25	28470	27749
88837	0	21	26	61849	47555
7131	1	0	0	0	0
9056	0	0	4	2179	1336
76611	1	15	17	8019	11017
132697	0	50	21	39644	55184
100681	1	17	22	23494	43485




Summary of computational transaction
Raw Inputview raw input (R code)
Raw Outputview raw output of R engine
Computing time4 seconds
R Server'Gwilym Jenkins' @ jenkins.wessa.net

\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 & 4 seconds \tabularnewline
R Server & 'Gwilym Jenkins' @ jenkins.wessa.net \tabularnewline
\hline
\end{tabular}
%Source: https://freestatistics.org/blog/index.php?pk=159275&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]4 seconds[/C][/ROW]
[ROW][C]R Server[/C][C]'Gwilym Jenkins' @ jenkins.wessa.net[/C][/ROW]
[/TABLE]
Source: https://freestatistics.org/blog/index.php?pk=159275&T=0

Globally Unique Identifier (entire table): ba.freestatistics.org/blog/index.php?pk=159275&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 time4 seconds
R Server'Gwilym Jenkins' @ jenkins.wessa.net







Confusion Matrix (predicted in columns / actuals in rows)
C1C2
C14527
C2963

\begin{tabular}{lllllllll}
\hline
Confusion Matrix (predicted in columns / actuals in rows) \tabularnewline
 & C1 & C2 \tabularnewline
C1 & 45 & 27 \tabularnewline
C2 & 9 & 63 \tabularnewline
\hline
\end{tabular}
%Source: https://freestatistics.org/blog/index.php?pk=159275&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]45[/C][C]27[/C][/ROW]
[ROW][C]C2[/C][C]9[/C][C]63[/C][/ROW]
[/TABLE]
Source: https://freestatistics.org/blog/index.php?pk=159275&T=1

Globally Unique Identifier (entire table): ba.freestatistics.org/blog/index.php?pk=159275&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
C14527
C2963



Parameters (Session):
par1 = 5 ; par2 = quantiles ; par3 = 2 ; par4 = no ;
Parameters (R input):
par1 = 5 ; par2 = quantiles ; par3 = 2 ; par4 = no ; par5 = ; par6 = ; par7 = ; par8 = ; par9 = ; par10 = ; par11 = ; par12 = ; par13 = ; par14 = ; par15 = ; par16 = ; par17 = ; par18 = ; par19 = ; par20 = ;
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')
}