Я получаю эту ошибку при использовании XGBoost в R

Error in xgb.DMatrix(data, label = label, missing = missing) : 
  'data' has class 'character' and length 1791.
  'data' accepts either a numeric matrix or a single filename.

Ниже приведен код, который я запускаю

#importing the dataset
XGBoostDataSet_Hr_Admin <- read.csv("CompletedDataImputed_HR_Admin.csv")

#Use factor function to convert categorical data to numerical data
XGBoostDataSet_Hr_Admin$Salary = factor(XGBoostDataSet_Hr_Admin$Salary, levels =c('L','M', 'H', 'V'), labels =c(1,2,3,4))


#split the data in train dataset and test dataset


#fitting XGBoost to the Training Test
library(xgboost)
classifier = xgboost(data = as.matrix(training_set[-10]), label = training_set$Employee_Turnover, nrounds = 10)
2
ibocus 12 Ноя 2019 в 15:50
У вас все еще есть персонажи внутри training_set[-10], поэтому все конвертируется в персонажа
 – 
StupidWolf
12 Ноя 2019 в 16:04
1
Привет, StupidWolf, мне удалось решить проблему, мне нужно было добавить as.numeric при преобразовании категориальных значений в числовые значения.
 – 
ibocus
13 Ноя 2019 в 16:27

1 ответ

Мне удалось решить проблему, мне нужно было добавить as.numeric при преобразовании категориальных значений в числовые значения.

0
ibocus 13 Ноя 2019 в 16:51