Существует два фрейма данных: trainReady
(288об.) И testReady
(112об.). Эти фреймы данных содержат 55 атрибутов (54 непрерывных и 1 двоичный, атрибут класса). Я уже разделила эти 54 атрибута на 10 делений, уровней (с равным количеством наблюдений на предположение уровня). Количество набл. обоих классов в trainReady
почти равны. В testReady
тоже. Атрибут класса рассматривается как фактор. Ниже я размещаю фрагменты данных:
trainReady
testReady
Когда я пытаюсь запустить эти строки (как вы можете видеть, я установил порог для исключения проблемы «0-частоты»):
model_bayes <- naiveBayes(isFace ~ ., data = trainReady)
prediction <- predict(model_bayes, testReady[,-1], threshold = 0.001, eps = 0)
Я получаю:
Error in [.default(object$tables[[v]], , nd + islogical[attribs[v]]) :
subscript out of bounds
Что я уже сделал, чтобы помочь себе в преодолении проблемы:
model_bayes <- naiveBayes(isFace ~ ., data = trainReady, drop.unused.levels = FALSE)
- Прогнозирование данных, которые использовались для обучения модели:
prediction <- predict(model_bayes, trainReady[,-1], threshold = 0.001, eps = 0)
1 не работает, 2 работает, но я хотел бы прогнозировать на тестовых данных. Не могли бы вы сказать мне, как я могу решить эту проблему?