繁体   English   中英

运行 Prophet()、ds 和 y 时如何解决 ValueError

[英]how do i solve ValueError when running Prophet(), ds and y

我正在尝试从中学习预测

https://facebook.github.io/prophet/docs/quick_start.html#python-api

然后说,我用这个df

df = pd.read_csv("https://datahub.io/core/natural-gas/r/daily.csv").iloc[-1000:]
df

之后,我运行这段代码

m = Prophet()
m.fit(df)

它显示错误 ValueError: Dataframe must have column "ds" and "y" 分别带有日期和值。 我相信这个 df 已经在适当的 ds 作为日期戳和 y 作为数字

然后,我试图从另一个选项运行一些东西来小写 CSV 文件,但它不会改变

我认为这里的列名可能是一个问题,因为这个 csv 文件的列是Date & Price

因为正如 API 的文档中提到的那样

Prophet 的输入总是一个 dataframe 有两列:ds 和 y。

他们从来没有说过,我们可以随意命名。

所以也许尝试重命名它,然后将它与 API 一起使用

让我知道它是否有效,如果没有,那么我们将寻找另一种解决方案

谢谢

您的源数据集列名称与 Prophet() 不兼容,因此您必须更改名称并正确格式化以使 dataframe 适合 Prophet。

df = pd.read_csv("https://datahub.io/core/natural-gas/r/daily.csv").iloc[-1000:]

new_df=df[['Date','Price']]
new_df['Date']=pd.to_datetime(new_df['Date'])
new_df.rename(columns = {'Date':'ds'}, inplace = True)
new_df.rename(columns = {'Price':'y'}, inplace = True)

m = Prophet()
m.fit(new_df)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM