Spaces:
Running
Running
Fixed the error with the fixed window (used cross validation with n_windows = 1)
Browse files
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 |
-
|
| 121 |
-
|
| 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(
|
| 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:
|