azrai99 commited on
Commit
67e7e14
·
verified ·
1 Parent(s): c5f2f83

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +25 -25
app.py CHANGED
@@ -240,7 +240,7 @@ def transfer_learning_forecasting():
240
 
241
  columns = df.columns.tolist()
242
  ds_col = st.selectbox("Select Date/Time column", options=columns, index=columns.index('ds') if 'ds' in columns else 0)
243
- target_columns = [col for col in columns if (col != ds_col) and (col != ds_col)]
244
  y_col = st.selectbox("Select Target column", options=target_columns, index=0)
245
 
246
  st.session_state.ds_col = ds_col
@@ -342,7 +342,7 @@ def dynamic_forecasting():
342
 
343
  columns = df.columns.tolist()
344
  ds_col = st.selectbox("Select Date/Time column", options=columns, index=columns.index('ds') if 'ds' in columns else 0)
345
- target_columns = [col for col in columns if (col != ds_col) and (col != ds_col)]
346
  y_col = st.selectbox("Select Target column", options=target_columns, index=0)
347
 
348
  st.session_state.ds_col = ds_col
@@ -398,7 +398,7 @@ def timegpt_fcst():
398
 
399
  columns = df.columns.tolist()
400
  ds_col = st.selectbox("Select Date/Time column", options=columns, index=columns.index('ds') if 'ds' in columns else 0)
401
- target_columns = [col for col in columns if (col != ds_col) and (col != ds_col)]
402
  y_col = st.selectbox("Select Target column", options=target_columns, index=0)
403
  h = st.number_input("Forecast horizon", value=14)
404
 
@@ -410,19 +410,19 @@ def timegpt_fcst():
410
  df = df[['unique_id','ds','y']]
411
 
412
 
413
- freq = determine_frequency(df)
414
 
415
- df = df.drop_duplicates(subset=['ds']).reset_index(drop=True)
416
-
417
- # st.write(df)
418
- if st.sidebar.button("Submit"):
419
- forecast_df = nixtla_client.forecast(
420
- df=df,
421
- h=h,
422
- freq=freq,
423
- level=[90]
424
- )
425
- st.session_state.forecast_df = forecast_df
426
 
427
  if 'forecast_df' in st.session_state:
428
  forecast_df = st.session_state.forecast_df
@@ -465,7 +465,7 @@ def timegpt_anom():
465
 
466
  columns = df.columns.tolist()
467
  ds_col = st.selectbox("Select Date/Time column", options=columns, index=columns.index('ds') if 'ds' in columns else 0)
468
- target_columns = [col for col in columns if (col != ds_col) and (col != ds_col)]
469
  y_col = st.selectbox("Select Target column", options=target_columns, index=0)
470
 
471
  df = df.rename(columns={ds_col: 'ds', y_col: 'y'})
@@ -474,16 +474,16 @@ def timegpt_anom():
474
  df['unique_id']=id_col
475
  df = df[['unique_id','ds','y']]
476
 
477
- freq = determine_frequency(df)
478
 
479
- df = df.drop_duplicates(subset=['ds']).reset_index(drop=True)
480
- if st.sidebar.button("Submit"):
481
- anom_df = nixtla_client.detect_anomalies(
482
- df=df,
483
- freq=freq,
484
- level=90
485
- )
486
- st.session_state.anom_df = anom_df
487
 
488
  if 'anom_df' in st.session_state:
489
  anom_df = st.session_state.anom_df
 
240
 
241
  columns = df.columns.tolist()
242
  ds_col = st.selectbox("Select Date/Time column", options=columns, index=columns.index('ds') if 'ds' in columns else 0)
243
+ target_columns = [col for col in columns if (col != ds_col) and (col != 'unique_id')]
244
  y_col = st.selectbox("Select Target column", options=target_columns, index=0)
245
 
246
  st.session_state.ds_col = ds_col
 
342
 
343
  columns = df.columns.tolist()
344
  ds_col = st.selectbox("Select Date/Time column", options=columns, index=columns.index('ds') if 'ds' in columns else 0)
345
+ target_columns = [col for col in columns if (col != ds_col) and (col != 'unique_id')]
346
  y_col = st.selectbox("Select Target column", options=target_columns, index=0)
347
 
348
  st.session_state.ds_col = ds_col
 
398
 
399
  columns = df.columns.tolist()
400
  ds_col = st.selectbox("Select Date/Time column", options=columns, index=columns.index('ds') if 'ds' in columns else 0)
401
+ target_columns = [col for col in columns if (col != ds_col) and (col != 'unique_id')]
402
  y_col = st.selectbox("Select Target column", options=target_columns, index=0)
403
  h = st.number_input("Forecast horizon", value=14)
404
 
 
410
  df = df[['unique_id','ds','y']]
411
 
412
 
413
+ freq = determine_frequency(df)
414
 
415
+ df = df.drop_duplicates(subset=['ds']).reset_index(drop=True)
416
+
417
+ # st.write(df)
418
+ if st.sidebar.button("Submit"):
419
+ forecast_df = nixtla_client.forecast(
420
+ df=df,
421
+ h=h,
422
+ freq=freq,
423
+ level=[90]
424
+ )
425
+ st.session_state.forecast_df = forecast_df
426
 
427
  if 'forecast_df' in st.session_state:
428
  forecast_df = st.session_state.forecast_df
 
465
 
466
  columns = df.columns.tolist()
467
  ds_col = st.selectbox("Select Date/Time column", options=columns, index=columns.index('ds') if 'ds' in columns else 0)
468
+ target_columns = [col for col in columns if (col != ds_col) and (col != 'unique_id')]
469
  y_col = st.selectbox("Select Target column", options=target_columns, index=0)
470
 
471
  df = df.rename(columns={ds_col: 'ds', y_col: 'y'})
 
474
  df['unique_id']=id_col
475
  df = df[['unique_id','ds','y']]
476
 
477
+ freq = determine_frequency(df)
478
 
479
+ df = df.drop_duplicates(subset=['ds']).reset_index(drop=True)
480
+ if st.sidebar.button("Submit"):
481
+ anom_df = nixtla_client.detect_anomalies(
482
+ df=df,
483
+ freq=freq,
484
+ level=90
485
+ )
486
+ st.session_state.anom_df = anom_df
487
 
488
  if 'anom_df' in st.session_state:
489
  anom_df = st.session_state.anom_df