library(e1071)
iris = read.csv("irisF.csv", header=TRUE, sep=";", dec=".", strip.white=TRUE, encoding = 'UTF-8')
#Сгенерируем массив из 150 (по количеству цветков в наборе – nrow(data))
#случайных чисел 1 (с вероятностью 70%) и 2 (с вероятностью 30%)
ind = sample(2, nrow(iris), replace=TRUE, prob=c(0.70, 0.30))
train_x = iris[ind==1,-5]
train_y = iris[ind==1,5]
test_x = iris[ind==2,-5]
test_y = iris[ind==2,5]
#Выполним обучение наивного Байесовского классификатора
#(обучение) по построенной обучающей выборке:
model = naiveBayes(train_x, train_y)
#Теперь можно применить настроенный классификатор, проверить его работу на тестовой выборке:
pred = predict(model, test_x)
table(pred, test_y)
## test_y
## pred setosa versicolor virginica
## setosa 11 0 0
## versicolor 0 15 1
## virginica 0 1 12
Acc = mean(pred == test_y)
paste("Точность=", round(100*Acc, 2), "%", sep = "")
## [1] "Точность=95%"
library(ggplot2)
qplot(iris$petal_length, iris$petal_width,col=iris$species)
