James Taylor
James Taylor

Reputation: 494

Tuning XGboost parameters Using Caret - Error: The tuning parameter grid should have columns

I am using caret for modeling using "xgboost"

1- However, I get following error :

"Error: The tuning parameter grid should have columns nrounds,
 max_depth, eta, gamma, colsample_bytree, min_child_weight, subsample"                          

The code:

library(caret)
library(doParallel) 
library(dplyr)        
library(pROC)               
library(xgboost)   

## Create train/test indexes
## preserve class indices
set.seed(42)
my_folds <- createFolds(train_churn$churn, k = 10)


# Compare class distribution
i <- my_folds$Fold1
table(train_churn$churn[i]) / length(i)

 my_control <- trainControl(
 summaryFunction = twoClassSummary,
 classProbs = TRUE,
 verboseIter = TRUE,
 savePredictions = TRUE,
 index = my_folds
 )

my_grid <- expand.grid(nrounds = 500,
                   max_depth = 7,
                   eta = 0.1,
                   gammma = 1,
                   colsample_bytree = 1,
                   min_child_weight = 100,
                   subsample = 1)


set.seed(42)
model_xgb <- train(
             class ~ ., data = train_churn,
             metric = "ROC",
             method =  "xgbTree",
             trControl = my_control,
             tuneGrid = my_grid)

2- I also want to get a prediction made by averaging the predictions made by using the model fitted for each fold.

Upvotes: 2

Views: 2739

Answers (1)

Vinamra Rai
Vinamra Rai

Reputation: 39

I know it's 'tad' bit late but, check your spelling of gamma in the grid of tuning parameters. You misspelled it as gammma (with triple m's).

Upvotes: 2

Related Questions