Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
if self.is_seasonality_request:
if self.seasonality == 'weekly':
# Prepare the seasonality data frame
# Parameter start needs to be any arbitrary week starting on a Sunday
days = (pd.date_range(start='2017-01-01', periods=7) + pd.Timedelta(days=self.weekly_start))
df_w = plot.seasonality_plot_df(self.model, days)
# Calculate seasonal components
self.forecast = self.model.predict_seasonal_components(df_w)
elif self.seasonality == 'yearly':
# Prepare the seasonality data frame
# Parameter start needs to be 1st January for any arbitrary year
days = (pd.date_range(start='2017-01-01', periods=365) + pd.Timedelta(days=self.yearly_start))
df_y = plot.seasonality_plot_df(self.model, days)
# Calculate seasonal components
self.forecast = self.model.predict_seasonal_components(df_y)
else:
# Prepare the seasonality data frame
start = pd.to_datetime('2017-01-01 0000')
period = self.model.seasonalities[self.seasonality]['period']
end = start + pd.Timedelta(days=period)
# plot_points = 200
# plot_points is used instead of period below in fbprophet/forecaster.py.
# However, it seems to make more sense to use period given the expected usage in Qlik
intervals = pd.to_datetime(np.linspace(start.value, end.value, period))
df_x = plot.seasonality_plot_df(self.model, intervals)