在python中使用Prophet预测每个类别的值 [英] forecasting values for each category using Prophet in python

查看:476
本文介绍了在python中使用Prophet预测每个类别的值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我对使用Python和Prophet进行时间序列非常陌生.我有一个数据集,其中包含变量商品代码,日期和售出数量.我正在尝试使用Python中的Prophet预测每个月每个商品的销售量.

I am very new to doing time series in Python and Prophet. I have a dataset with the variables article code, date and quantity sold. I am trying to forecast the quantity sold for each article for each month using Prophet in python.

我尝试使用for循环对每篇文章进行预测,但是我不确定如何在输出(预测)数据中显示文章类型,以及如何直接从"for循环"将其写到文件中.

I tried using for loop for performing the forecast for each article, But I am not sure how to display the article type in output(forecast) data and also write it to a file directly from the "for loop".

df2 = df2.rename(columns={'Date of the document': 'ds','Quantity sold': 'y'})
for article in df2['Article bar code']:

    # set the uncertainty interval to 95% (the Prophet default is 80%)
    my_model = Prophet(weekly_seasonality= True, daily_seasonality=True,seasonality_prior_scale=1.0)
    my_model.fit(df2)
    future_dates = my_model.make_future_dataframe(periods=6, freq='MS')
    forecast = my_model.predict(future_dates)
return forecast

我想要如下所示的输出,并希望将其直接从"for循环"写入输出文件.

I want the output like below, and want this to be written to an output file directly from the "for loop".

预先感谢.

推荐答案

articletype分隔数据框,然后尝试将所有预测值存储在字典中

Separate your dataframe by articletype and then try storing all your predicted values in a dictionary

def get_prediction(df):
    prediction = {}
    df = df.rename(columns={'Date of the document': 'ds','Quantity sold': 'y', 'Article bar code': 'article'})
    list_articles = df2.article.unique()

    for article in list_articles:
        article_df = df2.loc[df2['article'] == article]
        # set the uncertainty interval to 95% (the Prophet default is 80%)
        my_model = Prophet(weekly_seasonality= True, daily_seasonality=True,seasonality_prior_scale=1.0)
        my_model.fit(article_df)
        future_dates = my_model.make_future_dataframe(periods=6, freq='MS')
        forecast = my_model.predict(future_dates)
        prediction[article] = forecast
    return prediction

现在,预测将对每种类型的文章进行预测.

now the prediction will have forecasts for each type of article.

这篇关于在python中使用Prophet预测每个类别的值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆