class_docstr: Class to build a Prophet Model
      
class_docstr_tok: ["Class","to","build","a","Prophet","Model"]
docstr: Automatically build a Prophet Model
docstr_tok: ["Automatically","build","a","Prophet","Model"]
code: def __init__(
      self,
      forecast_period,
      time_interval,
      seasonal_period,
      scoring,
      verbose,
      conf_int,
      holidays,
      growth,
      seasonality,
      **kwargs,
  ):
      """
      Automatically build a Prophet Model
      """
      super().__init__(
          scoring=scoring,
          forecast_period=forecast_period,
          verbose=verbose,
          kwargs=kwargs,
      )
      self.time_interval = time_interval
      self.seasonal_period = seasonal_period
      self.conf_int = conf_int
      self.holidays = holidays
      self.growth = growth
      self.seasonality = seasonality
      yearly_seasonality = False
      daily_seasonality = False
      weekly_seasonality = False
      if self.time_interval == "weeks":
          weekly_seasonality = seasonality
      elif self.time_interval == "years":
          yearly_seasonality = seasonality
      elif self.time_interval == "days":
          daily_seasonality = seasonality
      # self.model = Prophet(
      #    yearly_seasonality=yearly_seasonality,
      #    weekly_seasonality=weekly_seasonality,
      #    daily_seasonality=daily_seasonality,
      #    interval_width=self.conf_int,
      #    holidays = self.holidays,
      #    growth = self.growth)
      self.model = Prophet(growth=self.growth)
      self.univariate = None
      self.list_of_valid_time_ints = [
          "B",
          "C",
          "D",
          "W",
          "M",
          "SM",
          "BM",
          "CBM",
          "MS",
          "SMS",
          "BMS",
          "CBMS",
          "Q",
          "BQ",
          "QS",
          "BQS",
          "A,Y",
          "BA,BY",
          "AS,YS",
          "BAS,BYS",
          "BH",
          "H",
          "T,min",
          "S",
          "L,ms",
          "U,us",
          "N",
      ]
      self.list_of_valid_time_ints.append(time_interval)
  
      if kwargs:
          self.kwargs = kwargs
          for key, value in zip(kwargs.keys(), kwargs.values()):
              if key == "seasonality_mode":
                  self.seasonality = True
                  key = value
              else:
                  key = value
      else:
          self.kwargs = {"iter": 100}
      print("kwargs for Prophet model: %s" % self.kwargs)
  
imports: from typing import Optional
  import logging
  import copy
  import time
  import numpy
  from sklearn.model_selection import TimeSeriesSplit
  import pandas
  from pandas.core.generic import NDFrame
  import pdb
  import dask
  import dask.dataframe
  import matplotlib.pyplot
  from prophet import Prophet
  from prophet.diagnostics import cross_validation
  from prophet.diagnostics import performance_metrics
  from prophet.plot import plot_cross_validation_metric
  from .build_base import BuildBase
  from ..utils import print_dynamic_rmse, quick_ts_plot, print_ts_model_stats
  from ..utils.logging import SuppressStdoutStderr
  from sklearn.metrics import mean_squared_error
  from prophet import Prophet
  import time
  import pdb
  import copy
  import matplotlib.pyplot
label_desc: Use image node_id 1 to create a new BuildProphet object from inherited base classes: BuildBase with example: obj = BuildProphet(forecast_period, time_interval, seasonal_period, scoring, verbose, conf_int, holidays, growth, seasonality)