code: def coef_(self):
          
          if getattr(self, 'booster', None) is not None and self.booster != 'gblinear':
              raise AttributeError('Coefficients are not defined for Booster type {}'
                                   .format(self.booster))
          b = self.get_booster()
          coef = np.array(json.loads(b.get_dump(dump_format='json')[0])['weight'])
          # Logic for multiclass classification
          n_classes = getattr(self, 'n_classes_', None)
          if n_classes is not None:
              if n_classes > 2:
                  assert len(coef.shape) == 1
                  assert coef.shape[0] % n_classes == 0
                  coef = coef.reshape((n_classes, -1))
          return coef
docs: Coefficients property
  
          .. note:: Coefficients are defined only for linear learners
  
              Coefficients are only defined when the linear model is chosen as base
              learner (`booster=gblinear`). It is not defined for other base learner types, such
              as tree learners (`booster=gbtree`).
  
          Returns
          -------
          coef_ : array of shape ``[n_features]`` or ``[n_classes, n_features]``