Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Auto_Ces "Exception: no model able to be fitted" #830

Open
LGsus20 opened this issue Apr 30, 2024 · 4 comments
Open

Auto_Ces "Exception: no model able to be fitted" #830

LGsus20 opened this issue Apr 30, 2024 · 4 comments

Comments

@LGsus20
Copy link

LGsus20 commented Apr 30, 2024

I have around 19,800 values, AutoARIMA, AutoTheta and AutoRegressive work fine, but AutoCES gives this error
image

@jmoralez jmoralez transferred this issue from Nixtla/nixtla Apr 30, 2024
@jmoralez
Copy link
Member

Hey @LGsus20, thanks for using statsforecast. Do you have any NaNs in your data? i.e. does Y_df['y'].isnull().sum() return a positive number?

@LGsus20
Copy link
Author

LGsus20 commented Apr 30, 2024

It returns 0

@jmoralez
Copy link
Member

Can you provide a small reproducible example (reference)?

@LGsus20
Copy link
Author

LGsus20 commented May 1, 2024

Im using pycharm and python 3.10, I didn't have this problem when I was using 13,000 values, I suppose there's a limit on how many values AutoCES can handle. I don't have this problem with AutoARIMA, AutoRegressive, LSTM, PatchTST, AutoETS, AutoLSTM, and AutoTheta

CODE:

from statsforecast import StatsForecast
from statsforecast.models import AutoARIMA, AutoCES
import pandas as pd
import numpy as np

PATH = "https://raw.githubusercontent.com/LGsus20/Weather-Forecasting-Scraping/main/Forecasting_Code/DATASET_Modified_Monthly_2022-2024.csv"
Y_df = pd.read_csv(PATH).assign(unique_id=np.ones(len(pd.read_csv(PATH))))
print("Starting processing")
models = [
#    AutoARIMA(season_length=24),
    AutoCES(season_length=24)
]

sf = StatsForecast(
    models=models,
    freq='h',
    n_jobs=-1
)

Y_hat_df = sf.forecast(df=Y_df, h=6)
sf.fit(df=Y_df)
Y_hat_df = sf.predict(h=6)
Y_hat_df.head(6)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants