class_docstr: Exponentiated gradient reduction for fair classification.
  
  Exponentiated gradient reduction is an in-processing technique that reduces
  fair classification to a sequence of cost-sensitive classification problems,
  returning a randomized classifier with the lowest empirical error subject to
  fair classification constraints [#agarwal18]_.
  
  References:
      .. [#agarwal18] `A. Agarwal, A. Beygelzimer, M. Dudik, J. Langford, and
         H. Wallach, "A Reductions Approach to Fair Classification,"
         International Conference on Machine Learning, 2018.
         <https://arxiv.org/abs/1803.02453>`_
docstr: Predict class labels for the given samples.
  Args:
      X (pandas.DataFrame): Test samples.
  Returns:
      numpy.ndarray: Predicted class label per sample.
code: def predict(self, X):
      """Predict class labels for the given samples.
      Args:
          X (pandas.DataFrame): Test samples.
      Returns:
          numpy.ndarray: Predicted class label per sample.
      """
      if self.drop_prot_attr:
          X = X.drop(self.prot_attr, axis=1)
  
      return self.classes_[self.model_.predict(X)]
  
file_path: AIF360/aif360/sklearn/inprocessing/exponentiated_gradient_reduction.py
imports: from sklearn.base import BaseEstimator, ClassifierMixin, clone
  from sklearn.preprocessing import LabelEncoder
label_desc: Use image node_id 3 for calling the ExponentiatedGradientReduction obj's underlying member method code with example usage: obj.predict(X) and returns: self