library(party)
## Loading required package: grid
## Loading required package: mvtnorm
## Loading required package: modeltools
## Loading required package: stats4
## Loading required package: strucchange
## Loading required package: zoo
##
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
##
## as.Date, as.Date.numeric
## Loading required package: sandwich
data(iris)
fit2 <- ctree(Species ~ Sepal.Length + Petal.Length + Sepal.Width ,
data=iris)
plot(fit2)

table(Predict(fit2), iris$Species)
##
## setosa versicolor virginica
## setosa 50 0 0
## versicolor 0 44 1
## virginica 0 6 49
library(randomForest)
## randomForest 4.6-12
## Type rfNews() to see new features/changes/bug fixes.
fit3 <- randomForest(Species ~ Sepal.Length + Petal.Length + Sepal.Width ,
data=iris)
print(fit3)
##
## Call:
## randomForest(formula = Species ~ Sepal.Length + Petal.Length + Sepal.Width, data = iris)
## Type of random forest: classification
## Number of trees: 500
## No. of variables tried at each split: 1
##
## OOB estimate of error rate: 6.67%
## Confusion matrix:
## setosa versicolor virginica class.error
## setosa 50 0 0 0.00
## versicolor 0 44 6 0.12
## virginica 0 4 46 0.08
library(e1071)
library(caret)
## Loading required package: lattice
## Loading required package: ggplot2
##
## Attaching package: 'ggplot2'
## The following object is masked from 'package:randomForest':
##
## margin
iris$predicted.response <- predict(fit3 ,iris)
confusionMatrix(data=iris$predicted.response,
reference=iris$Species,
positive='yes')
## Confusion Matrix and Statistics
##
## Reference
## Prediction setosa versicolor virginica
## setosa 50 0 0
## versicolor 0 49 0
## virginica 0 1 50
##
## Overall Statistics
##
## Accuracy : 0.9933
## 95% CI : (0.9634, 0.9998)
## No Information Rate : 0.3333
## P-Value [Acc > NIR] : < 2.2e-16
##
## Kappa : 0.99
## Mcnemar's Test P-Value : NA
##
## Statistics by Class:
##
## Class: setosa Class: versicolor Class: virginica
## Sensitivity 1.0000 0.9800 1.0000
## Specificity 1.0000 1.0000 0.9900
## Pos Pred Value 1.0000 1.0000 0.9804
## Neg Pred Value 1.0000 0.9901 1.0000
## Prevalence 0.3333 0.3333 0.3333
## Detection Rate 0.3333 0.3267 0.3333
## Detection Prevalence 0.3333 0.3267 0.3400
## Balanced Accuracy 1.0000 0.9900 0.9950
x = iris[,-5]
y = iris$Species
model = train(x,y,'nb',trControl=trainControl(method='cv',number=10))
## Loading required package: klaR
## Loading required package: MASS
model
## Naive Bayes
##
## 150 samples
## 5 predictor
## 3 classes: 'setosa', 'versicolor', 'virginica'
##
## No pre-processing
## Resampling: Cross-Validated (10 fold)
## Summary of sample sizes: 135, 135, 135, 135, 135, 135, ...
## Resampling results across tuning parameters:
##
## usekernel Accuracy Kappa
## FALSE 0.9866667 0.98
## TRUE 0.9800000 0.97
##
## Tuning parameter 'fL' was held constant at a value of 0
## Tuning
## parameter 'adjust' was held constant at a value of 1
## Accuracy was used to select the optimal model using the largest value.
## The final values used for the model were fL = 0, usekernel = FALSE
## and adjust = 1.
predict(model$finalModel,x)
## $class
## [1] setosa setosa setosa setosa setosa setosa
## [7] setosa setosa setosa setosa setosa setosa
## [13] setosa setosa setosa setosa setosa setosa
## [19] setosa setosa setosa setosa setosa setosa
## [25] setosa setosa setosa setosa setosa setosa
## [31] setosa setosa setosa setosa setosa setosa
## [37] setosa setosa setosa setosa setosa setosa
## [43] setosa setosa setosa setosa setosa setosa
## [49] setosa setosa versicolor versicolor versicolor versicolor
## [55] versicolor versicolor versicolor versicolor versicolor versicolor
## [61] versicolor versicolor versicolor versicolor versicolor versicolor
## [67] versicolor versicolor versicolor versicolor versicolor versicolor
## [73] versicolor versicolor versicolor versicolor versicolor versicolor
## [79] versicolor versicolor versicolor versicolor versicolor virginica
## [85] versicolor versicolor versicolor versicolor versicolor versicolor
## [91] versicolor versicolor versicolor versicolor versicolor versicolor
## [97] versicolor versicolor versicolor versicolor virginica virginica
## [103] virginica virginica virginica virginica virginica virginica
## [109] virginica virginica virginica virginica virginica virginica
## [115] virginica virginica virginica virginica virginica virginica
## [121] virginica virginica virginica virginica virginica virginica
## [127] virginica virginica virginica virginica virginica virginica
## [133] virginica virginica virginica virginica virginica virginica
## [139] virginica virginica virginica virginica virginica virginica
## [145] virginica virginica virginica virginica virginica virginica
## Levels: setosa versicolor virginica
##
## $posterior
## setosa versicolor virginica
## [1,] 1.000000e+00 2.981309e-21 2.152373e-28
## [2,] 1.000000e+00 3.169312e-20 6.938030e-28
## [3,] 1.000000e+00 2.367113e-21 7.240956e-29
## [4,] 1.000000e+00 3.069606e-20 8.690636e-28
## [5,] 1.000000e+00 1.017337e-21 8.885794e-29
## [6,] 1.000000e+00 2.717732e-17 4.344285e-24
## [7,] 1.000000e+00 2.321639e-20 7.988271e-28
## [8,] 1.000000e+00 1.390751e-20 8.166995e-28
## [9,] 1.000000e+00 1.990156e-20 3.606469e-28
## [10,] 1.000000e+00 7.378931e-21 3.615492e-28
## [11,] 1.000000e+00 9.396089e-21 1.474623e-27
## [12,] 1.000000e+00 3.461964e-20 2.093627e-27
## [13,] 1.000000e+00 2.804520e-21 1.010192e-28
## [14,] 1.000000e+00 1.799033e-22 6.060578e-30
## [15,] 1.000000e+00 5.533879e-22 2.485033e-28
## [16,] 1.000000e+00 6.273863e-20 4.509864e-26
## [17,] 1.000000e+00 1.106658e-19 1.282419e-26
## [18,] 1.000000e+00 4.841773e-20 2.350011e-27
## [19,] 1.000000e+00 1.126175e-17 2.567180e-24
## [20,] 1.000000e+00 1.808513e-20 1.963924e-27
## [21,] 1.000000e+00 2.178382e-18 2.013989e-25
## [22,] 1.000000e+00 1.210057e-18 7.788592e-26
## [23,] 1.000000e+00 4.535220e-23 3.130074e-30
## [24,] 1.000000e+00 3.147327e-14 8.175305e-22
## [25,] 1.000000e+00 1.838507e-17 1.553757e-24
## [26,] 1.000000e+00 6.873990e-19 1.830374e-26
## [27,] 1.000000e+00 3.192598e-17 1.045146e-24
## [28,] 1.000000e+00 1.542562e-20 1.274394e-27
## [29,] 1.000000e+00 8.833285e-21 5.368077e-28
## [30,] 1.000000e+00 9.557935e-20 3.652571e-27
## [31,] 1.000000e+00 2.166837e-19 6.730536e-27
## [32,] 1.000000e+00 3.940500e-17 1.546678e-24
## [33,] 1.000000e+00 1.609092e-23 1.013278e-29
## [34,] 1.000000e+00 7.222217e-23 4.261853e-29
## [35,] 1.000000e+00 6.289348e-20 1.831694e-27
## [36,] 1.000000e+00 2.850926e-21 8.874002e-29
## [37,] 1.000000e+00 7.746279e-21 7.235628e-28
## [38,] 1.000000e+00 8.623934e-23 1.223633e-29
## [39,] 1.000000e+00 4.612936e-21 9.655450e-29
## [40,] 1.000000e+00 2.009325e-20 1.237755e-27
## [41,] 1.000000e+00 1.300634e-20 5.657689e-28
## [42,] 1.000000e+00 1.577617e-18 5.717219e-27
## [43,] 1.000000e+00 1.494911e-21 4.800333e-29
## [44,] 1.000000e+00 1.076475e-13 3.721344e-21
## [45,] 1.000000e+00 1.357569e-15 1.708326e-22
## [46,] 1.000000e+00 3.882113e-19 5.587814e-27
## [47,] 1.000000e+00 5.086735e-21 8.960156e-28
## [48,] 1.000000e+00 5.012793e-21 1.636566e-28
## [49,] 1.000000e+00 5.717245e-21 8.231337e-28
## [50,] 1.000000e+00 7.713456e-21 3.349997e-28
## [51,] 6.225045e-110 9.997479e-01 2.520714e-04
## [52,] 8.570847e-103 9.999382e-01 6.175742e-05
## [53,] 1.215697e-123 9.988066e-01 1.193433e-03
## [54,] 1.152529e-72 1.000000e+00 3.867457e-08
## [55,] 1.581871e-108 9.999467e-01 5.331762e-05
## [56,] 1.972563e-92 9.999990e-01 1.020052e-06
## [57,] 7.022043e-116 9.994729e-01 5.271422e-04
## [58,] 2.601790e-37 1.000000e+00 3.183182e-10
## [59,] 6.767475e-100 9.999892e-01 1.078777e-05
## [60,] 5.102801e-72 9.999999e-01 1.093625e-07
## [61,] 7.504643e-44 1.000000e+00 3.208078e-10
## [62,] 4.917431e-89 9.999958e-01 4.245756e-06
## [63,] 4.725838e-63 1.000000e+00 7.695236e-09
## [64,] 1.089964e-106 9.999846e-01 1.544774e-05
## [65,] 4.887696e-58 1.000000e+00 3.060696e-08
## [66,] 1.579126e-95 9.999779e-01 2.214465e-05
## [67,] 1.379538e-100 9.999896e-01 1.037882e-05
## [68,] 2.067506e-65 1.000000e+00 2.048320e-08
## [69,] 6.720035e-104 9.999940e-01 5.953299e-06
## [70,] 3.077859e-61 1.000000e+00 8.918403e-09
## [71,] 6.643323e-130 9.947081e-01 5.291896e-03
## [72,] 1.273962e-73 9.999998e-01 2.303272e-07
## [73,] 3.635930e-122 9.999168e-01 8.322850e-05
## [74,] 1.343761e-98 9.999979e-01 2.106614e-06
## [75,] 3.069700e-86 9.999982e-01 1.764714e-06
## [76,] 2.623805e-95 9.999861e-01 1.392484e-05
## [77,] 1.747438e-114 9.998994e-01 1.006309e-04
## [78,] 8.854376e-138 9.883852e-01 1.161480e-02
## [79,] 5.212805e-102 9.999850e-01 1.501794e-05
## [80,] 1.468423e-44 1.000000e+00 1.634262e-09
## [81,] 1.277115e-57 1.000000e+00 4.592000e-09
## [82,] 8.948524e-51 1.000000e+00 1.778126e-09
## [83,] 3.517650e-65 1.000000e+00 3.430714e-08
## [84,] 2.726206e-135 3.076150e-02 9.692385e-01
## [85,] 4.238525e-100 9.999916e-01 8.405606e-06
## [86,] 1.332644e-105 9.998521e-01 1.478728e-04
## [87,] 2.875899e-113 9.997405e-01 2.595475e-04
## [88,] 4.973519e-91 9.999993e-01 7.170422e-07
## [89,] 2.070566e-75 9.999998e-01 2.429045e-07
## [90,] 2.273490e-72 9.999999e-01 5.500821e-08
## [91,] 5.215785e-84 9.999998e-01 1.520450e-07
## [92,] 5.960938e-102 9.999882e-01 1.182936e-05
## [93,] 5.251986e-69 1.000000e+00 4.173171e-08
## [94,] 1.360017e-37 1.000000e+00 2.771698e-10
## [95,] 6.219736e-80 9.999998e-01 2.006854e-07
## [96,] 1.453599e-75 9.999998e-01 1.800789e-07
## [97,] 8.474883e-80 9.999997e-01 3.376164e-07
## [98,] 1.875115e-85 9.999988e-01 1.164505e-06
## [99,] 5.826890e-33 1.000000e+00 3.157898e-10
## [100,] 4.078752e-76 9.999998e-01 1.832703e-07
## [101,] 3.993755e-252 2.062063e-12 1.000000e+00
## [102,] 1.262363e-152 5.598282e-04 9.994402e-01
## [103,] 2.460661e-219 4.654977e-09 1.000000e+00
## [104,] 2.871277e-176 4.592219e-05 9.999541e-01
## [105,] 8.299887e-217 6.350771e-09 1.000000e+00
## [106,] 1.371182e-270 7.614910e-12 1.000000e+00
## [107,] 7.258155e-109 4.096782e-01 5.903218e-01
## [108,] 3.741935e-227 3.564099e-08 1.000000e+00
## [109,] 5.567821e-191 1.165303e-05 9.999883e-01
## [110,] 2.052443e-263 4.923323e-14 1.000000e+00
## [111,] 8.673566e-162 9.795170e-06 9.999902e-01
## [112,] 4.233346e-166 6.357027e-05 9.999364e-01
## [113,] 4.360086e-193 1.246172e-07 9.999999e-01
## [114,] 6.229150e-154 2.887102e-04 9.997113e-01
## [115,] 2.201429e-189 2.786497e-08 1.000000e+00
## [116,] 2.949946e-194 1.225678e-08 1.000000e+00
## [117,] 2.915226e-171 4.314790e-05 9.999569e-01
## [118,] 1.347608e-284 5.745992e-14 1.000000e+00
## [119,] 2.786402e-309 2.302938e-14 1.000000e+00
## [120,] 3.307637e-125 3.037334e-01 6.962666e-01
## [121,] 2.194169e-220 3.424331e-10 1.000000e+00
## [122,] 3.376038e-148 3.083326e-04 9.996917e-01
## [123,] 6.251357e-272 2.341745e-11 1.000000e+00
## [124,] 5.094321e-138 3.139418e-03 9.968606e-01
## [125,] 6.315724e-204 2.601027e-08 1.000000e+00
## [126,] 5.257396e-206 1.901615e-07 9.999998e-01
## [127,] 1.851587e-132 5.186340e-03 9.948137e-01
## [128,] 9.865968e-137 2.542930e-03 9.974571e-01
## [129,] 5.230872e-197 2.791477e-07 9.999997e-01
## [130,] 7.020556e-182 1.647833e-05 9.999835e-01
## [131,] 6.306827e-221 2.428996e-08 1.000000e+00
## [132,] 2.539020e-250 9.337782e-12 1.000000e+00
## [133,] 2.210816e-204 4.000640e-08 1.000000e+00
## [134,] 3.732889e-131 4.709186e-02 9.529081e-01
## [135,] 1.561444e-153 1.886075e-02 9.811392e-01
## [136,] 7.419068e-252 2.896100e-12 1.000000e+00
## [137,] 1.004503e-218 1.948671e-10 1.000000e+00
## [138,] 1.349608e-170 4.383372e-05 9.999562e-01
## [139,] 2.480958e-131 4.974797e-03 9.950252e-01
## [140,] 8.440522e-188 1.353834e-07 9.999999e-01
## [141,] 2.334365e-221 1.491244e-10 1.000000e+00
## [142,] 2.179140e-186 1.270533e-08 1.000000e+00
## [143,] 1.262363e-152 5.598282e-04 9.994402e-01
## [144,] 3.426814e-232 1.319403e-10 1.000000e+00
## [145,] 2.011574e-235 5.241271e-12 1.000000e+00
## [146,] 1.078519e-190 1.583110e-08 1.000000e+00
## [147,] 1.091014e-149 5.695800e-04 9.994304e-01
## [148,] 1.847697e-167 8.800598e-06 9.999912e-01
## [149,] 1.439996e-198 6.768314e-09 1.000000e+00
## [150,] 2.944253e-146 1.272237e-03 9.987278e-01
table(predict(model$finalModel,x)$class,y)
## y
## setosa versicolor virginica
## setosa 50 0 0
## versicolor 0 49 0
## virginica 0 1 50
naive_iris <- NaiveBayes(iris$Species ~ ., data = iris)
library(rpart)
fit4 <- rpart(Species ~ Sepal.Length + Petal.Length + Sepal.Width ,
data=iris,method = "class")
print(fit4)
## n= 150
##
## node), split, n, loss, yval, (yprob)
## * denotes terminal node
##
## 1) root 150 100 setosa (0.33333333 0.33333333 0.33333333)
## 2) Petal.Length< 2.45 50 0 setosa (1.00000000 0.00000000 0.00000000) *
## 3) Petal.Length>=2.45 100 50 versicolor (0.00000000 0.50000000 0.50000000)
## 6) Petal.Length< 4.75 45 1 versicolor (0.00000000 0.97777778 0.02222222) *
## 7) Petal.Length>=4.75 55 6 virginica (0.00000000 0.10909091 0.89090909) *
library(rattle)
## Rattle: A free graphical interface for data mining with R.
## Version 4.1.0 Copyright (c) 2006-2015 Togaware Pty Ltd.
## Type 'rattle()' to shake, rattle, and roll your data.
fancyRpartPlot(fit4)

library("CHAID")
## Loading required package: partykit
##
## Attaching package: 'partykit'
## The following objects are masked from 'package:party':
##
## cforest, ctree, ctree_control, edge_simple, mob, mob_control,
## node_barplot, node_bivplot, node_boxplot, node_inner,
## node_surv, node_terminal
data(iris)
str(iris)
## 'data.frame': 150 obs. of 5 variables:
## $ Sepal.Length: num 5.1 4.9 4.7 4.6 5 5.4 4.6 5 4.4 4.9 ...
## $ Sepal.Width : num 3.5 3 3.2 3.1 3.6 3.9 3.4 3.4 2.9 3.1 ...
## $ Petal.Length: num 1.4 1.4 1.3 1.5 1.4 1.7 1.4 1.5 1.4 1.5 ...
## $ Petal.Width : num 0.2 0.2 0.2 0.2 0.2 0.4 0.3 0.2 0.2 0.1 ...
## $ Species : Factor w/ 3 levels "setosa","versicolor",..: 1 1 1 1 1 1 1 1 1 1 ...
ctrl <- chaid_control(minsplit = 20, minbucket = 5, minprob = 0)
iris=lapply(iris,as.factor)
chaidiris <- chaid(Species ~ Sepal.Length + Petal.Length + Sepal.Width + Petal.Width ,
data=iris, control = ctrl)
print(chaidiris)
##
## Model formula:
## Species ~ Sepal.Length + Petal.Length + Sepal.Width + Petal.Width
##
## Fitted party:
## [1] root
## | [2] Petal.Width in 0.1, 0.2, 0.3, 0.4, 0.5, 0.6: setosa (n = 50, err = 0.0%)
## | [3] Petal.Width in 1, 1.1, 1.2, 1.3: versicolor (n = 28, err = 0.0%)
## | [4] Petal.Width in 1.4, 1.5, 1.6, 1.7: versicolor (n = 26, err = 19.2%)
## | [5] Petal.Width in 1.8, 1.9, 2, 2.1, 2.2, 2.3, 2.4, 2.5: virginica (n = 46, err = 2.2%)
##
## Number of inner nodes: 1
## Number of terminal nodes: 4