class_docstr: Base class for BoostBoruta meta-estimator.
  
  Warning: This class should not be used directly. Use derived classes
  instead.
  
  Notes
  -----
  The code for the Boruta algorithm is inspired and improved from:
  https://github.com/scikit-learn-contrib/boruta_py
class_docstr_tok: ["Base","class","for","BoostBoruta","meta-estimator",".","Warning",":","This","class","should","not","be","used","directly",".","Use","derived","classes","instead",".","Notes","--","--","-","The","code","for","the","Boruta","algorithm","is","inspired","and","improved","from",":","https",":","\/\/github.com\/scikit-learn-contrib\/boruta_py"]
docstr: Private method to operate Bonferroni corrections on the feature
  selections.
docstr_tok: ["Private","method","to","operate","Bonferroni","corrections","on","the","feature","selections","."]
code: def _do_tests(self, dec_reg, hit_reg, iter_id):
      """Private method to operate Bonferroni corrections on the feature
      selections."""
  
      active_features = np.where(dec_reg >= 0)[0]
      hits = hit_reg[active_features]
      # get uncorrected p values based on hit_reg
      to_accept_ps = sp.stats.binom.sf(hits - 1, iter_id, 0.5).flatten()
      to_reject_ps = sp.stats.binom.cdf(hits, iter_id, 0.5).flatten()
  
      # Bonferroni correction with the total n_features in each iteration
      to_accept = to_accept_ps <= self.alpha / float(len(dec_reg))
      to_reject = to_reject_ps <= self.alpha / float(len(dec_reg))
  
      # find features which are 0 and have been rejected or accepted
      to_accept = np.where((dec_reg[active_features] == 0) * to_accept)[
          0
      ]
      to_reject = np.where((dec_reg[active_features] == 0) * to_reject)[
          0
      ]
  
      # updating dec_reg
      dec_reg[active_features[to_accept]] = 1
      dec_reg[active_features[to_reject]] = -1
  
      return dec_reg
  
imports: import io
  import contextlib
  import warnings
  import numpy
  import scipy
  from copy import deepcopy
  from sklearn.base import clone
  from sklearn.utils.validation import check_is_fitted
  from sklearn.base import BaseEstimator, TransformerMixin
  from joblib import Parallel, delayed
  from hyperopt import fmin, tpe
  from .utils import ParameterSampler, _check_param, _check_boosting
  from .utils import _set_categorical_indexes, _get_categorical_support
  from .utils import _feature_importances, _shap_importances
label_desc: Use image node_id 4 for calling the _Boruta obj's underlying member method code with example usage: obj._do_tests(dec_reg, hit_reg, iter_id) and returns: dec_reg