首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Prophet Python ValueError:数据帧中缺少Regressor

Prophet Python ValueError:数据帧中缺少Regressor
EN

Stack Overflow用户
提问于 2018-08-24 07:27:27
回答 2查看 2.9K关注 0票数 2

我正在尝试使用Python的Prophet包的最新(第二个) 0.3版本。

我的模型应该包括一个外生回归器,但我收到一个ValueError,指出数据帧中缺少真正存在的回归器。这是一个bug,还是我做错了什么?

代码语言:javascript
复制
#Random Dataset Preparation

import random
random.seed(a=1)

df = pandas.DataFrame(data = None, columns = ['ds', 'y', 'ex'], index = range(50))
datelist = pandas.date_range(pandas.datetime.today(), periods = 50).tolist()

y = numpy.random.normal(0, 1, 50)
ex = numpy.random.normal(0, 2, 50)

df['ds'] = datelist
df['y'] = y
df['ex'] = ex

#Model
prophet_model = Prophet(seasonality_prior_scale = 0.1)
Prophet.add_regressor(prophet_model, 'ex')
prophet_model.fit(df)
prophet_forecast_step = prophet_model.make_future_dataframe(periods=1)

#Result-df
prophet_x_df = pandas.DataFrame(data=None, columns=['Date_x', 'Res'], index = range(int(len(y))))

#Error
prophet_x_df.iloc[0,1] = prophet_model.predict(prophet_forecast_step).iloc[0,0] 
EN

回答 2

Stack Overflow用户

发布于 2019-03-26 05:37:37

您需要首先创建一个具有回归量值的列,该列需要出现在拟合和预测数据帧中。

Refer prophet docs

票数 2
EN

Stack Overflow用户

发布于 2019-01-07 05:29:23

make_future_dataframe仅生成包含ds列的数据帧。您需要将'ex‘列添加到prophet_forecast_step数据框中,以便将其用作回归器

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51995558

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档