class_docstr: Base class for heterogeneous ensemble of learners.
  
  Parameters
  ----------
  estimators : list of (str, estimator) tuples
      The ensemble of estimators to use in the ensemble. Each element of the
      list is defined as a tuple of string (i.e. name of the estimator) and
      an estimator instance. An estimator can be set to `'drop'` using
      `set_params`.
  
  Attributes
  ----------
  estimators_ : list of estimators
      The elements of the estimators parameter, having been fitted on the
      training data. If an estimator has been set to `'drop'`, it will not
      appear in `estimators_`.
class_docstr_tok: ["Base","class","for","heterogeneous","ensemble","of","learners",".","Parameters","--","--","--","--","--","estimators",":","list","of","(","str",",","estimator",")","tuples","The","ensemble","of","estimators","to","use","in","the","ensemble",".","Each","element","of","the","list","is","defined","as","a","tuple","of","string","(","i.e",".","name","of","the","estimator",")","and","an","estimator","instance",".","An","estimator","can","be","set","to","`","'drop","'","`","using","`","set_params","`",".","Attributes","--","--","--","--","--","estimators_",":","list","of","estimators","The","elements","of","the","estimators","parameter",",","having","been","fitted","on","the","training","data",".","If","an","estimator","has","been","set","to","`","'drop","'","`",",","it","will","not","appear","in","`","estimators_","`","."]
code: def _more_tags(self):
      try:
          allow_nan = all(
              _safe_tags(est[1])["allow_nan"]
              if est[1] != "drop"
              else True
              for est in self.estimators
          )
      except Exception:
          # If `estimators` does not comply with our API (list of tuples) then it will
          # fail. In this case, we assume that `allow_nan` is False but the parameter
          # validation will raise an error during `fit`.
          allow_nan = False
      return {"preserves_dtype": [], "allow_nan": allow_nan}
  
imports: from abc import ABCMeta, abstractmethod
  from typing import List
  import numpy
  from joblib import effective_n_jobs
  from ..base import BaseEstimator, MetaEstimatorMixin, clone, is_classifier, is_regressor
  from ..utils import Bunch, _print_elapsed_time, check_random_state
  from ..utils._tags import _safe_tags
  from ..utils.metaestimators import _BaseComposition
label_desc: Use image node_id 6 for calling the _BaseHeterogeneousEnsemble obj's underlying member method code with example usage: obj._more_tags() and returns: dict