在Python中从statsforecast.models导入Adida失败

q0qdq0h2  于 2022-12-01  发布在  Python
关注(0)|答案(3)|浏览(151)

我试图在python中复制这段用于统计预测的代码,我遇到了无法从statsforecast库中加载此模型“adida”的问题,
以下是参考链接:https://towardsdatascience.com/time-series-forecasting-with-statistical-models-f08dcd1d24d1

import random
from itertools import product
from IPython.display import display, Markdown
from multiprocessing import cpu_count

import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
from nixtlats.data.datasets.m4 import M4, M4Info

from statsforecast import StatsForecast
from statsforecast.models import (
    adida, 
    croston_classic, 
    croston_sba, 
    croston_optimized,
    historic_average,
    imapa,
    naive,
    random_walk_with_drift, 
    seasonal_exponential_smoothing,
    seasonal_naive, 
    seasonal_window_average,
    ses, 
    tsb,
    window_average
)

附件是错误消息,请您看一下,然后告诉我为什么导入时会出现问题?
下面给出的是错误图像:

vhmi4jdf

vhmi4jdf1#

我做了一些研究,发现问题可能是与版本,尝试安装这个特定版本的statsforecast

pip install statsforecasts==0.6.0

尝试加载这些模型后,希望这应该工作。

zphenhs4

zphenhs42#

从StatsForecast v1.0.0开始,API变得更像sklearn,使用类而不是函数。您可以在此处找到新语法的示例:https://nixtla.github.io/statsforecast/examples/IntermittentData.html
新代码将是

from statsforecast import StatsForecast
from statsforecast.models import ADIDA, IMAPA

model = StatsForecast(df=Y_train_df, # your data
                      models=[ADIDA(), IMAPA()], 
                      freq=freq, # frequency of your data
                      n_jobs=-1)

如果要使用旧语法,则按建议设置版本应该可以。

oknwwptz

oknwwptz3#

如果你已经更新了包..使用ADIDA它将工作看到模型列表名称与新包ADIDA()、

IMAPA(),
(SimpleExponentialSmoothing(0.1)),
(TSB(0.3,0.2)),
(WindowAverage( 6))

相关问题