'Check the estimator and set the base_estimator_ attribute.'

def _validate_estimator(self):

    super(AdaBoostClassifier, self)._validate_estimator(default=DecisionTreeClassifier(max_depth=1))
    if (self.algorithm == 'SAMME.R'):
        if (not hasattr(self.base_estimator_, 'predict_proba')):
            raise TypeError("AdaBoostClassifier    with    algorithm='SAMME.R'    requires    that    the    weak    learner    supports    the    calculation    of    class    probabilities    with    a    predict_proba    method.\nPlease    change    the    base    estimator    or    set    algorithm='SAMME'    instead.")
    if (not has_fit_parameter(self.base_estimator_, 'sample_weight')):
        raise ValueError(("%s    doesn't    support    sample_weight." % self.base_estimator_.__class__.__name__))
