azrai99 commited on
Commit
1d5eb19
·
verified ·
1 Parent(s): a9b1c26

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +9 -12
app.py CHANGED
@@ -158,16 +158,17 @@ def select_model(horizon, model_type, max_steps=200):
158
  else:
159
  raise ValueError(f"Unsupported model type: {model_type}")
160
 
161
- def forecast_time_series(df, model_type, freq, horizon, max_steps=200):
 
 
 
162
  start_time = time.time() # Start timing
163
- if freq:
164
- df['ds'] = pd.date_range(start='1970-01-01', periods=len(df), freq=freq)
165
- else:
166
- freq = determine_frequency(df)
167
- st.write(f"Determined frequency: {freq}")
168
  df['ds'] = pd.to_datetime(df['ds'], errors='coerce')
169
  df = df.dropna(subset=['ds'])
170
- model = select_model(horizon, model_type, max_steps)
 
171
  forecast_results = {}
172
  st.write(f"Generating forecast using {model_type} model...")
173
  forecast_results[model_type] = generate_forecast(model, df)
@@ -242,12 +243,8 @@ def dynamic_forecasting():
242
  dynamic_horizon = st.number_input("Forecast horizon", value=18)
243
  dynamic_max_steps = st.number_input('Max steps', value=200)
244
 
245
-
246
- # Determine frequency of data
247
- frequency = determine_frequency(df)
248
- st.write(f"Detected frequency: {frequency}")
249
 
250
- forecast_time_series(df, dynamic_model_choice, frequency, dynamic_horizon, dynamic_max_steps)
251
 
252
  pg = st.navigation({
253
  "Overview": [
 
158
  else:
159
  raise ValueError(f"Unsupported model type: {model_type}")
160
 
161
+ def model_train(model):
162
+ model.fit(df)
163
+ return model
164
+ def forecast_time_series(df, model_type, horizon, max_steps=200):
165
  start_time = time.time() # Start timing
166
+ freq = determine_frequency(df)
167
+ st.write(f"Determined frequency: {freq}")
 
 
 
168
  df['ds'] = pd.to_datetime(df['ds'], errors='coerce')
169
  df = df.dropna(subset=['ds'])
170
+ selected_model = select_model(horizon, model_type, max_steps)
171
+ model = model_train(selected_model)
172
  forecast_results = {}
173
  st.write(f"Generating forecast using {model_type} model...")
174
  forecast_results[model_type] = generate_forecast(model, df)
 
243
  dynamic_horizon = st.number_input("Forecast horizon", value=18)
244
  dynamic_max_steps = st.number_input('Max steps', value=200)
245
 
 
 
 
 
246
 
247
+ forecast_time_series(df, dynamic_model_choice, dynamic_horizon, dynamic_max_steps)
248
 
249
  pg = st.navigation({
250
  "Overview": [