filipeclduarte commited on
Commit
3678333
·
1 Parent(s): d8a4627

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +25 -3
app.py CHANGED
@@ -15,6 +15,18 @@ if uploaded_file is not None:
15
  date = st.text_input("Write the first date")
16
  freq = st.text_input("Write the frequency")
17
  horizons = int(st.text_input("Write the number of horizons"))
 
 
 
 
 
 
 
 
 
 
 
 
18
  if series is not None:
19
  series_train = pd.DataFrame(
20
  {
@@ -29,12 +41,22 @@ if uploaded_file is not None:
29
 
30
  fcst = StatsForecast(
31
  series_train,
32
- models=[(auto_arima, 12), (seasonal_naive, 12)],
33
  freq=freq,
34
  n_jobs=1
35
  )
36
  forecasts = fcst.forecast(horizons, level=(80, 95))
37
  st.write(forecasts)
38
- fig.add_scatter(x=forecasts['ds'], y=forecasts['auto_arima_season_length-12_mean'], mode='lines')
39
- fig.add_scatter(x=forecasts['ds'], y=forecasts['seasonal_naive_season_length-12'], mode='lines')
 
 
 
 
 
 
 
 
 
 
40
  st.plotly_chart(fig)
 
15
  date = st.text_input("Write the first date")
16
  freq = st.text_input("Write the frequency")
17
  horizons = int(st.text_input("Write the number of horizons"))
18
+ seasonality = match freq:
19
+ case 'Y':
20
+ 10
21
+ case 'Q':
22
+ 4
23
+ case 'M':
24
+ 12
25
+ case 'W':
26
+ 4
27
+ case 'D':
28
+ 7
29
+ st.write(f'Seasonality: {seasonality}')
30
  if series is not None:
31
  series_train = pd.DataFrame(
32
  {
 
41
 
42
  fcst = StatsForecast(
43
  series_train,
44
+ models=[(auto_arima, seasonality), (seasonal_naive, seasonality)],
45
  freq=freq,
46
  n_jobs=1
47
  )
48
  forecasts = fcst.forecast(horizons, level=(80, 95))
49
  st.write(forecasts)
50
+ fig.add_scatter(x=forecasts['ds'], y=forecasts[f'auto_arima_season_length-{seasonality}_mean'], mode='lines')
51
+ fig.update_traces(
52
+ name=f'auto_arima_season_length-{seasonality}_mean',
53
+ line=dict(color='blue', width=3),
54
+ showlegend=True
55
+ )
56
+ fig.add_scatter(x=forecasts['ds'], y=forecasts[f'seasonal_naive_season_length-{seasonality}'], mode='lines')
57
+ fig.update_traces(
58
+ name=f'seasonal_naive_season_length-{seasonality}',
59
+ line=dict(color='blue', width=3),
60
+ showlegend=True
61
+ )
62
  st.plotly_chart(fig)