2016-12-17 2 views
-1

Я пытаюсь использовать C50 здесь то, что я сделалОшибка в sort.list (у): «х» должна быть атомарной для сортировки списка

train$default<-as.factor(train$default) 

result<-C5.0(train[-17],train$default) 

finalresult <- predict(result, test) 

Я пытаюсь выполнить следующую команду table(test, Predicted=finalresult) в R мягкий но он дает следующее сообщение об ошибке

Error in sort.list(y): 'x' must be atomic for sort list 

какие-либо предложения?

ответ

0

Вы не указали, как выглядит test. Поскольку он используется для предсказания, он предположительно содержит функции и значение, которое вы хотите предсказать. Предполагая, что вы хотите предсказать test$answer. Попробуйте

table(test$answer, Predicted=finalresult) 
+0

им получить следующую ошибку Теперь 'Все аргументы должны иметь такой же length' –

+0

Вы должны дать более подробную информацию. Каковы размеры теста и окончательного результата. Каковы соответствующие типы данных. Используете ли вы другие пакеты помимо C50? Базовая таблица представляет собой кросс-вкладку и требует аргументов равной длины. –

+0

Кстати, в некоторых пакетах вам нужно явно указать 'newdata' для его работы. Если вы не предоставите, они будут использовать данные, которые вы использовали для обучения модели. В вашем случае я бы попробовал 'предсказать (результат, newdata = test)' –

Смежные вопросы