microprediction / timemachines

Predict time-series with one line of code.
https://www.microprediction.com/blog/popular-timeseries-packages
MIT License
395 stars 51 forks source link

Neuralprophet is failing #39

Closed microprediction closed 2 years ago

microprediction commented 2 years ago

Probably something obvious

microprediction commented 2 years ago

https://github.com/microprediction/timemachines/actions/workflows/test-neuralprophet.yml

microprediction commented 2 years ago

This is a very easy one

    y = [157.0, 157.0, 155.0, 155.0, 230.0, 230.0, ...], k = 5, freq = 'H'
    model_params = {'n_lags': 1}

        def nprophet_fit_and_predict_simple(y: [float], k: int, freq: str = None, model_params: dict = None) -> Tuple[
            List, List, Any, Any]:
            """ Simpler wrapper for offlinetesting - univariate only """
            assert isinstance(y[0],float)
            freq = freq or NPROPHET_META['freq']
            used_params = NPROPHET_MODEL
            used_params.update({'n_forecasts':k})
            if model_params:
                used_params.update(model_params)

            if len(y)<used_params['n_lags']:
                x = [wrap(y)[0]]*k
                x_std = [1.0]*k
                return x, x_std, None, None
            else:
                model = NeuralProphet(**used_params)
    >           model.set_log_level(log_level='CRITICAL')
    E           AttributeError: 'NeuralProphet' object has no attribute 'set_log_level'