library(frbs) ## Start input data load("iris.5f.RData") tra.iris.1 <- iris.5.1.tra tra.iris.2 <- iris.5.2.tra tra.iris.3 <- iris.5.3.tra tra.iris.4 <- iris.5.4.tra tra.iris.5 <- iris.5.5.tra tst.iris.1 <- iris.5.1.tst[, 1 : 4] tst.iris.2 <- iris.5.2.tst[, 1 : 4] tst.iris.3 <- iris.5.3.tst[, 1 : 4] tst.iris.4 <- iris.5.4.tst[, 1 : 4] tst.iris.5 <- iris.5.5.tst[, 1 : 4] real.iris.1 <- matrix(iris.5.1.tst[, 5], ncol = 1) real.iris.2 <- matrix(iris.5.2.tst[, 5], ncol = 1) real.iris.3 <- matrix(iris.5.3.tst[, 5], ncol = 1) real.iris.4 <- matrix(iris.5.4.tst[, 5], ncol = 1) real.iris.5 <- matrix(iris.5.5.tst[, 5], ncol = 1) range.data<-matrix(c(4.3, 7.9, 2.0, 4.4, 1.0, 6.9, 0.1, 2.5, 0.501, 3.499), nrow=2) ########################## ### 2. Training Process method.type <- "SBC" control <- list(r.a = 0.5, eps.high = 0.5, eps.low = 0.15, name = "iris") ########################## ### 2. Training Process ### The main result on this process is rule database which is used on testing process. object.1 <- frbs.learn(tra.iris.1, range.data, method.type, control) object.2 <- frbs.learn(tra.iris.2, range.data, method.type, control) object.3 <- frbs.learn(tra.iris.3, range.data, method.type, control) object.4 <- frbs.learn(tra.iris.4, range.data, method.type, control) object.5 <- frbs.learn(tra.iris.5, range.data, method.type, control) ########################## ### 3b. Testing process res.test.1 <- predict(object.1, tst.iris.1) res.test.2 <- predict(object.2, tst.iris.2) res.test.3 <- predict(object.3, tst.iris.3) res.test.4 <- predict(object.4, tst.iris.4) res.test.5 <- predict(object.5, tst.iris.5) ######################### ### Error Measurement ########################## y.pred.1 <- round(res.test.1) y.real.1 <- real.iris.1 y.pred.2 <- round(res.test.2) y.real.2 <- real.iris.2 y.pred.3 <- round(res.test.3) y.real.3 <- real.iris.3 y.pred.4 <- round(res.test.4) y.real.4 <- real.iris.4 y.pred.5 <- round(res.test.5) y.real.5 <- real.iris.5 err.1 = 100*sum(y.real.1!=y.pred.1)/nrow(y.pred.1) err.2 = 100*sum(y.real.2!=y.pred.2)/nrow(y.pred.2) err.3 = 100*sum(y.real.3!=y.pred.3)/nrow(y.pred.3) err.4 = 100*sum(y.real.4!=y.pred.4)/nrow(y.pred.4) err.5 = 100*sum(y.real.5!=y.pred.5)/nrow(y.pred.5) print("SBC: percentage Error on each Iris") print(err.1) print(err.2) print(err.3) print(err.4) print(err.5) err.aver <- 1/5 * (err.1 + err.2 + err.3 + err.4 + err.5) print("average error percentage") print(err.aver)