code: def _train_model(self, data):
      print(self.params)
      dtrain = xgb.DMatrix(data.X_train, data.y_train)
      if data.task == "Ranking":
          dtrain.set_group(data.groups)
      t_start = time.time()
      self.model = xgb.train(
          self.params, dtrain, self.num_rounds, [(dtrain, "train")]
      )
      elapsed_time = time.time() - t_start
  
      return elapsed_time
  
file_path: thundergbm/python/benchmarks/model/xgboost_model.py
imports: from model.base_model import BaseModel
  import numpy
  import xgboost
  import time
  import utils.data_utils
  from model.datasets import Dataset
label_desc: Use image node_id 3 for calling the XGboostModel obj's underlying member method code with example usage: obj._train_model(data) and returns: elapsed_time