这里用iris数据集分三层抽样
install.packages("e1071");#安装朴素贝叶斯预测包
install.packages("sampling")
library(sampling);
library(e1071);
sample<-strata(iris, stratanames=c("Species"),c(40,40,40), method="srswor",description=FALSE)
#无放回抽样,(数据集,抽样依据的列名,每层需要抽的观测数,有放回抽样,不加额外描述)
train<-iris[sample$ID_unit,]
test<-iris[-sample$ID_unit,]#除去sample剩下的观测量
classifier<-naiveBayes(train[,1:4], train[,5]) #训练模型
predict(classifier, test[,-5])#预测
table(predict(classifier, test[,-5]), test[,5], dnn=list('predicted','actual'))#查看预测结果