Adds support for providing polars dataframes as inputs and getting polars dataframes as outputs. This currently passes the dataframe to the underlying model, which can cause errors in the presence of categoricals, this will be addressed in a follow-up PR adding the option to convert to numpy (categoricals will be replaced by their codes or physical representation in polars).
Replaces the target transforms implementations to allow using a grouped array, which should be more efficient. It's still possible to implement custom target transformations that use dataframes (pandas + polars).
Adds the missing scalers from utilsforecast (MinMax, Robust, BoxCox).
Makes the freq argument of the MLForecast constructor required, which could potentially be a breaking change.
Drops support for python 3.7 and adds support for 3.11 (this version isn't tested in the distributed forecast because ray doesn't support 3.11 yet).
Fixes #151
Checklist:
[x] This PR has a meaningful title and a clear description.
Description
freq
argument of the MLForecast constructor required, which could potentially be a breaking change.Checklist: