class_docstr: AutoARIMAProphet adapter.
  
  Returns best ARIMA model using external variables created by the Prophet interface.
  This class receives as parameters the same as prophet.Prophet and uses a `models.AutoARIMA`
  backend.
  
  If your forecasting pipeline uses Prophet the `AutoARIMAProphet` adapter helps to
  easily substitute Prophet with an AutoARIMA.
  
  Parameters
  ----------
  growth : string
      'linear', 'logistic' or 'flat' to specify a linear, logistic or flat trend.
  changepoints : List of dates
      Potential changepoints. Otherwise selected automatically.
  n_changepoints : int
      Number of potential changepoints to include.
  changepoint_range : float
      Proportion of history in which trend changepoints will be estimated.
  yearly_seasonality : str, bool or int
      Fit yearly seasonality. Can be 'auto', True, False, or a number of Fourier terms to generate.
  weekly_seasonality : str, bool or int
      Fit weekly seasonality. Can be 'auto', True, False, or a number of Fourier terms to generate.
  daily_seasonality : str, bool or int
      Fit daily seasonality. Can be 'auto', True, False, or a number of Fourier terms to generate.
  holidays : pandas.DataFrame
      DataFrame with columns holiday (string) and ds (date type).
  interval_width : float
      Uncertainty forecast intervals width. `StatsForecast`'s level
  
  Notes
  -----
  You can create automated exogenous variables from the Prophet data processing pipeline
  these exogenous will be included into `AutoARIMA`'s exogenous features. Parameters like
  `seasonality_mode`, `seasonality_prior_scale`, `holidays_prior_scale`, `changepoint_prior_scale`,
  `mcmc_samples`, `uncertainty_samples`, `stan_backend` are Prophet exclusive.
  
  References
  ----------
  [Sean J. Taylor, Benjamin Letham (2017). "Prophet Forecasting at Scale"](https://peerj.com/preprints/3190.pdf)
  
  [Oskar Triebe, Hansika Hewamalage, Polina Pilyugina, Nikolay Laptev, Christoph Bergmeir, Ram Rajagopal (2021). "NeuralProphet: Explainable Forecasting at Scale".](https://arxiv.org/pdf/2111.15397.pdf)
  
  [Rob J. Hyndman, Yeasmin Khandakar (2008). "Automatic Time Series Forecasting: The forecast package for R"](https://www.jstatsoft.org/article/view/v027i03).
docstr: Predict using the AutoARIMAProphet adapter.
  
  Parameters
  ----------
  df : pandas.DataFrame
      DataFrame with columns ds (date type) and y, the time series.
  
  Returns
  -------
  pandas.DataFrame
      DataFrame with the forecast components.
docstr_tok: ["Predict","using","the","AutoARIMAProphet","adapter",".","Parameters","--","--","--","--","--","df",":","pandas.DataFrame","DataFrame","with","columns","ds","(","date","type",")","and","y",",","the","time","series",".","Returns","--","--","--","-","pandas.DataFrame","DataFrame","with","the","forecast","components","."]
code: def predict(self, df=None):
      """Predict using the AutoARIMAProphet adapter.
  
      Parameters
      ----------
      df : pandas.DataFrame
          DataFrame with columns ds (date type) and y, the time series.
  
      Returns
      -------
      pandas.DataFrame
          DataFrame with the forecast components.
      """
      if self.history is None:
          raise Exception("Model has not been fit.")
  
      if df is None:
          df = self.history.copy()
      else:
          if df.shape[0] == 0:
              raise ValueError("Dataframe has no rows.")
          df = self.setup_dataframe(df.copy())
  
      seasonal_features = self.make_all_seasonality_features(df)[0].loc[
          :, self.xreg_cols
      ]
  
      ds_forecast = set(df["ds"])
      h = len(ds_forecast - set(self.history["ds"]))
      if h > 0:
          X = (
              seasonal_features.values[-h:]
              if not seasonal_features.empty
              else None
          )
          fcsts_df = self.arima.predict(
              h=h, X=X, level=int(100 * self.interval_width)
          )
      else:
          fcsts_df = pd.DataFrame()
      if len(ds_forecast) > h:
          in_sample = self.arima.predict_in_sample(
              level=int(100 * self.interval_width)
          )
          fcsts_df = pd.concat([in_sample, fcsts_df]).reset_index(
              drop=True
          )
  
      yhat = fcsts_df.pop("mean")
      fcsts_df.columns = ["yhat_lower", "yhat_upper"]
      fcsts_df.insert(0, "yhat", yhat)
      fcsts_df.insert(0, "ds", df["ds"])
  
      return fcsts_df
  
file_path: statsforecast/statsforecast/adapters/prophet.py
imports: import sys
  import pandas
  from ..arima import AutoARIMA
label_desc: Use image node_id 3 for calling the AutoARIMAProphet obj's underlying member method code with example usage: obj.predict(df) and returns: fcsts_df