Я изучаю этого урока , чтобы изучить основы пакета карет в R и машинном обучении.
Я получаю предупреждение, которое не понимаю, и не знаю, проблема ли это.Это происходит как тогда, когда я применяю шаги учебника к своим собственным данным, так и когда я следую учебнику.
orange <- read.csv('https://raw.githubusercontent.com/selva86/datasets/master/orange_juice_withmissing.csv')
trainRowNumbers <- createDataPartition(orange$Purchase, p=0.8, list=FALSE)
# Step 2: Create the training dataset
trainData <- orange[trainRowNumbers,]
# Step 3: Create the test dataset
testData <- orange[-trainRowNumbers,]
#Impute
preProcess_missingdata_model <- preProcess(trainData, method='knnImpute')
preProcess_missingdata_model
library(RANN) # required for knnInpute
trainData <- predict(preProcess_missingdata_model, newdata = trainData)
#One-hot encoding
dummies_model <- dummyVars(Purchase ~ ., data=trainData)
trainData_mat <- predict(dummies_model, newdata = trainData)
Я получаю: Предупреждение: В model.frame.default (Условия, новые данные, na.action = na.action, xlev = object $ lvls): переменная «Покупка» не является фактором
Но:
is.factor(trainData$Purchase)
[1] TRUE
У меня два вопроса:
- Что происходит?
- Это важно?
- (Для дополнительных очков), почему R предупреждения / сообщения об ошибках настолько плохи и неинформативны?