Python 将print()替换为return语句

Python 将print()替换为return语句,python,pandas,facebook-prophet,Python,Pandas,Facebook Prophet,在使用return语句之后,我需要在数据帧中输出。print()显示我的输出,但return语句给出:{} 这是我目前正在打印的代码 以下是我的输入数据帧格式: 这是我的代码主体 prediction = {} df2 = df.rename(columns={'date': 'ds','load': 'y', 'account': 'article'}) list_articles = df2.article.unique() def get_prediction(df): pred

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

这是我目前正在打印的代码

以下是我的输入数据帧格式:

这是我的代码主体

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

我需要预测的返回语句来执行打印显示的操作。当前,所有使用“返回预测”={}返回的内容都是空字典

您需要修复缩进:

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循环下,返回值需要在函数下。

for循环似乎在缩进的函数之外。一个函数的整体应该和我起床15小时后的状态一样:睡一会儿。在这一点上休息会更有效率,这样您就可以发现一些简单的错误,如
for
循环的缩进级别和
return
语句错误。谢谢,但我解决了这个问题,我现在返回{}但仍然打印工作抱歉,Stack Overflow旨在收集将来对其他人有用的问题,并提供解决问题的答案。这也意味着问题和答案是“静态的”,因为你不能用同一个问题来解决一个又一个不断发展和相关的问题;编辑问题会使每次给出的答案无效。我已回滚您的编辑。@MartijnPieters我确实编辑了问题-这与缩进错误不同-我返回的是完全不同的内容-请协助我尝试并获得以下内容:{}对于我的输出,
打印(列表文章)
返回什么?它打印:数组(['Acct301','Acct302','Acct303',dtype=object)@《死神》1988:这是一个不同的问题;这个答案解决了您的直接问题,即为什么会出现语法错误。你真的需要休息一下,因为睡眠不足是你现在的敌人。好吧,我把整个问题都改了