Я подготовил модель svm. Я хотел бы протестировать его, но я столкнулся с ошибкой в функции pred(). Для простоты, здесь я разделил данные теста и тренировки здесь в неслучайном разбиении на 70/30.Ошибка в предсказании svm
library(e1071)
train <- mydata[1:9731, ]
test <- mydata[(9731+1):13901, ]
mysvm <- svm(formula = outcome ~ BW + GA, data = train, type = "C-classification", kernel = "linear", gamma = 1, cost = 2)
predict(mysvm, newdata=test)
Сообщение об ошибке из предсказать() является:
Error in names(ret2) <- rowns :
'names' attribute [4170] must be the same length as the vector [4106]
Глава данных выглядит ...
> head(mydata)
BW outcome GA
1 2.00 Survived 34
2 2.81 Survived 41
3 1.85 Survived 35
4 2.23 Survived 32
5 1.21 Survived 34
6 2.91 Survived 37
This user было то же самое сообщение об ошибке. Проблема заключалась в том, что он/она не использовал dataframes. Это не проблема в моем случае.
> class(test)
[1] "data.frame"
> class(train)
[1] "data.frame"
Я не уверен, почему эта ошибка происходит или что это значит. Отслеживание() и отладка (предсказание) также не помогли.
Вы можете показать 'head (duput())' ваших исходных данных? (mydata) – erasmortg