Prophet文档中文翻译--quick_start

最近在学习Prophet模型,看着Prophet的Jupyter Notebook上面的几个例子,试着运行了一遍,然后顺便尝试了把文档翻译成中文,方便以后查阅。由于水平有限,可能会有一些翻译不准确的地方,后期有新的理解再继续修改吧。

%matplotlib inline
import logging
logging.getLogger('fbprophet').setLevel(logging.ERROR)
import warnings
warnings.filterwarnings("ignore")

Python API

Prophet遵循sklearn模型API。我们创建一个Prophet类的实例,然后调用它的fitpredict方法。

Prophet的输入始终是一个包含两列的数据:ds和y。 ds(datestamp)列应为Pandas预期的格式,理想情况下为YYYY-MM-DD的日期格式或YYYY-MM-DD HH:MM:SS的时间戳格式。 y列必须是数字,表示我们希望预测的度量。

作为示例,让我们看一下Peyton Manning的Wikipedia页面的日志,这个日志包含了页面每日浏览量的时间序列。我们使用R中的Wikipediatrend软件包来抓取这些数据.Peyton Manning提供了一个很好的例子,因为它说明了Prophet的一些特征,例如多个季节性,改变增长率,以及模拟特殊日子的能力(例如Manning’s playoff(曼宁的季后赛)和superbowl appearances(超级碗出场))。 CSV可在此处获得。

首先我们将导入数据:

import pandas as pd
from fbprophet import Prophet
df = pd.read_csv('examples/example_wp_log_peyton_manning.csv')
df.head()
dsy
02007-12-109.590761
12007-12-118.519590
22007-12-128.183677
32007-12-138.072467
42007-12-147.893572

我们通过实例化一个新的Prophet对象来训练模型。有关预测的任何设置都将被设置在构造函数中。然后调用其fit方法并传入历史数据帧。训练过程(Fitting)需要1-5秒。

m = Prophet()
m.fit(df)
<fbprophet.forecaster.Prophet at 0x1a7d5155a20>

然后在数据框(dataframe)上进行预测,其中列ds包含要进行预测的日期。您可以使用辅助方法Prophet.make_future_dataframe获得一个合适的数据帧,该数据帧将在未来延长指定的天数(指定预定天数)。默认情况下,它还会包含历史记录中的日期,然后我们将看到结合起来的(历史数据+预测数据框)的模型。

future = m.make_future_dataframe(periods=365)
future.tail()
ds
32652017-01-15
32662017-01-16
32672017-01-17
32682017-01-18
32692017-01-19

predict方法将给未来每一个日期生成一个预测值,并将其命名为yhat。如果您传递历史日期,它将根据样本数据进行训练。此处的forecast对象是一个新的数据框,其中包含一个预测值的列,以及包含组件(对历史数据的分解)和不确定区间的列。

forecast = m.predict(future)
forecast[['ds', 'yhat', 'yhat_lower', 'yhat_upper']].tail()
dsyhatyhat_loweryhat_upper
32652017-01-158.2123797.4950588.922266
32662017-01-168.5373817.8288449.249592
32672017-01-178.3248047.6274429.059846
32682017-01-188.1574757.5071108.907231
32692017-01-198.1693857.4996218.867653

您可以通过调用Prophet.plot方法并传入预测数据帧并绘制图像。

fig1 = m.plot(forecast)

在这里插入图片描述

如果要查看预测的成分构成,可以使用Prophet.plot_components方法。默认情况下,您将看到时间序列的趋势,年季节性和周季节性。如果你包括假期,你也会在这里看到。

fig2 = m.plot_components(forecast)

在这里插入图片描述

有关每种方法可用选项的更多详细信息,请参阅文档,例如,通过help(Prophet)或help(Prophet.fit)。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值