Это мой код для части Наивного Байеса a
trainPred<- predict(NBclassfier, newdata = train, type = "raw")
, но я получаю неправильное число для длины trainPred, которая в два раза больше, чем фактический размер trainPre.
Даже когда я использую
trainPred<- predict(NBclassfier, newdata = train, type = "class")
, я получаю только 0 для длины trainPred
, поэтому, когда я запускаю приведенный ниже код, я получаю ошибку
trainTable <- table(train$prog, trainPred)
Код для NBclassifer: NBclassfier = naiveBayes(prog~., data= train)
весь код с ошибкой
library(caret)
library(e1071)
set.seed(25)
trainIndex=createDataPartition(NaiveData$prog, p=0.8)$Resample1
train=NaiveData[trainIndex, ]
test=NaiveData[-trainIndex, ]
проверка баланса
print(table(NaiveData$prog))
0 1
496 261
Проверьте таблицу поездов
print(table(train$prog))
0 1
388 218
NBclassfier = naiveBayes(prog~., data= train)
trainPred <- predict(NBclassfier, newdata = train, type = "raw")
trainPred<- trainPred
trainTable <- table(train$prog, trainPred)
Error in table(train$prog, trainPred) : all arguments must have the same length