fmegahed commited on
Commit
30c7366
·
verified ·
1 Parent(s): 6f155ab

Fixed the error with the fixed window (used cross validation with n_windows = 1)

Browse files
Files changed (1) hide show
  1. app.py +3 -10
app.py CHANGED
@@ -117,17 +117,10 @@ def run_forecast(
117
  return eval_df, cv_results, fig_forecast, "Cross validation completed successfully!"
118
 
119
  else: # Fixed window
120
- train_size = len(df) - horizon
121
- if train_size <= 0:
122
- return None, None, None, f"Not enough data for horizon={horizon}"
123
-
124
- train_df = df.iloc[:train_size]
125
- test_df = df.iloc[train_size:]
126
- sf.fit(train_df)
127
- forecast = sf.predict(h=horizon)
128
- evaluation = evaluate(df=forecast, metrics=[bias, mae, rmse, mape], models=model_aliases)
129
  eval_df = pd.DataFrame(evaluation).reset_index()
130
- fig_forecast = create_forecast_plot(forecast, df)
131
  return eval_df, forecast, fig_forecast, "Fixed window evaluation completed successfully!"
132
 
133
  except Exception as e:
 
117
  return eval_df, cv_results, fig_forecast, "Cross validation completed successfully!"
118
 
119
  else: # Fixed window
120
+ cv_results = sf.cross_validation(df=df, h=horizon, step_size=10, n_windows=1) # any step size will do since it is only 1 window
121
+ evaluation = evaluate(df=cv_results, metrics=[bias, mae, rmse, mape], models=model_aliases)
 
 
 
 
 
 
 
122
  eval_df = pd.DataFrame(evaluation).reset_index()
123
+ fig_forecast = create_forecast_plot(cv_results, df)
124
  return eval_df, forecast, fig_forecast, "Fixed window evaluation completed successfully!"
125
 
126
  except Exception as e: