用return语句替换print()

时间:2019-10-05 17:15:51

标签: python pandas facebook-prophet

使用return语句后,我需要在数据帧中输出。 print()显示了我的输出,但是return语句给了我:{}

这是我当前的可打印Entire Code with current output的代码

这是我输入的数据帧格式:input_dataframe

这是我的代码正文

prediction = {}
df2 = df.rename(columns={'date': 'ds','load': 'y', 'account': 'article'})
list_articles = df2.article.unique()

def get_prediction(df):
    prediction = {}
    f2 = df.rename(columns={'date': 'ds','load': 'y', 'account': 
    'article'})
    list_articles = df2.article.unique()  
 for article in list_articles:
     article_df = df2.loc[df2['article'] == article]
     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

我需要有关预测的return语句来执行显示的内容。当前,所有使用“返回预测” = {}返回的内容-空字典

1 个答案:

答案 0 :(得分:1)

您需要修正缩进:

prediction = {}
df2 = df.rename(columns={'date': 'ds','load': 'y', 'account': 'article'})
list_articles = df2.article.unique()

def get_prediction(df):
    prediction = {}
    f2 = df.rename(columns={'date': 'ds','load': 'y', 'account': 
    'article'})
    list_articles = df2.article.unique()  
    for article in list_articles:
        article_df = df2.loc[df2['article'] == article]
        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

for循环必须在该函数下,for循环的内容必须在for循环下,而return必须在该函数下。