Spaces:
Running
Running
Update app.py
Browse files
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 !=
|
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 !=
|
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 !=
|
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 |
-
|
414 |
|
415 |
-
|
416 |
-
|
417 |
-
|
418 |
-
|
419 |
-
|
420 |
-
|
421 |
-
|
422 |
-
|
423 |
-
|
424 |
-
|
425 |
-
|
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 !=
|
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 |
-
|
478 |
|
479 |
-
|
480 |
-
|
481 |
-
|
482 |
-
|
483 |
-
|
484 |
-
|
485 |
-
|
486 |
-
|
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
|