मैं आर मैं एक सीएसवी मेरे डेटा के साथ फ़ाइल पढ़ रहा हूँ में XGBoost उपयोग करने में समस्या हो रहा है:आर - XGBoost: त्रुटि इमारत DMatrix
get_data = function()
{
#Loading Data
path = "dados_eye.csv"
data = read.csv(path)
#Dividing into two groups
train_porcentage = 0.05
train_lines = nrow(data)*train_porcentage
train = data[1:train_lines,]
test = data[train_lines:nrow(data),]
rownames(train) = c(1:nrow(train))
rownames(test) = c(1:nrow(test))
return (list("test" = test, "train" = train))
}
इस समारोह मेरी main.R
कहा जाता हैlista_dados = get_data()
#machine = train_svm(lista_dados$train)
#machine = train_rf(lista_dados$train)
machine = train_xgt(lista_dados$train)
train_xgt = function(train_data)
{
data_train = data.frame(train_data[,1:14])
label_train = data.frame(factor(train_data[,15]))
print(is.data.frame(data_train))
print(is.data.frame(label_train))
dtrain = xgb.DMatrix(data_train, label=label_train)
machine = xgboost(dtrain, num_class = 4 ,max.depth = 2,
eta = 1, nround = 2,nthread = 2,
objective = "binary:logistic")
return (machine)
}
यह त्रुटि है समस्या train_xgt में यहाँ है:
[email protected]:~/Documents/EEG_DATA/Dados_Eye$ Rscript main.R
[1] TRUE
[1] TRUE
Error in xgb.DMatrix(data_train, label = label_train) :
xgb.DMatrix: does not support to construct from list Calls: train_xgt -> xgb.DMatrix Execution halted [email protected]:~/Documents/EEG_DATA/Dados_Eye$
जैसा कि आप देख सकते हैं, वे दोनों डेटाफ्रेम हैं।
मुझे नहीं पता कि मैं क्या गलत कर रहा हूं, कृपया मदद करें!
क्या आप 'data.frame' इनपुट का उपयोग' data.matrix() 'परिवर्तित करता है, तो? xgboost डेटा.फ्रेम पसंद नहीं हो सकता है –