code: def _make_estimator(
      base_estimator, estimator_params, params={}, random_state=None
  ):
      """Make and configure a copy of base_estimator"""
      estimator = _clone(base_estimator)
      estimator.set_params(
          **dict((p, params[p]) for p in estimator_params)
      )
  
      if random_state is not None:
          _set_random_states(estimator, random_state)
      return estimator
  
imports: import numpy
  import pandas
  from joblib import Parallel, delayed
  from scipy.sparse import hstack, issparse
  from sklearn.base import BaseEstimator, TransformerMixin
  from sklearn.ensemble.forest import BaseForest, ExtraTreesClassifier, ExtraTreesRegressor, ForestClassifier, ForestRegressor, RandomForestClassifier, RandomForestRegressor
  from sklearn.tree import ExtraTreeRegressor
  from sklearn.preprocessing import OneHotEncoder
  from sklearn.model_selection import KFold
  from sklearn.utils import check_array, check_random_state
  from numpy import float32
  from numpy import float64
  from .validation import _check_estimator, _check_is_fitted
  from .base import _clone, _get_value, _parse_partitions
label_desc: Use image node_id 3 for calling a global function with example usage: _make_estimator(base_estimator, estimator_params, params, random_state) and returns: estimator