使用 facebook prophet 在具有多个时间序列的数据框中进行时间序列预测

Using facebook prophet to do time-series forecasting in dataframe that has multiple time-series

我有以下数据框:

             fid         via
2015-01-18  id_22207  0.275056
2015-01-30  id_22207  0.306961
2015-02-23  id_22207  0.285065
2015-02-24  id_22207  0.337570
2015-02-27  id_22207  0.311612
2015-01-18  id_22208  0.371765
2015-01-20  id_22208  0.405391
2015-02-11  id_22208  0.354052
2015-02-24  id_22208  0.421126
2015-03-15  id_22208  0.454406

我想使用此数据框通过 facebook 的 prophet 库进行时间序列预测。那个库中有没有办法使用这个数据框?棘手的部分是我有多个 fid 值,对于每个 fid,我在 via 列中都有多个日期的数据。我想为后续的 via 列做预测。数据框:

2015-03-18  id_22209
2015-03-20  id_22209
2015-03-21  id_22209
2015-03-24  id_22209
2015-03-25  id_22209

目前,prophet 不支持多变量时间序列预测或 VAR。最好的办法是在根据 fid 列拆分数据框后循环创建预测。

library(tidyverse)
library(prophet)

lapply(split(df, f= df$fid), function(x) {
    # Prophet expects columns to be ds, y
    x <- x %>% rename(y = via, ds = date)

    # Create prophet forecasts
    # ...
})

编辑

没注意到这个问题被标记为 Python。

unique_fid = df['fid'].unique()
for fid in unique_fid:
    temp_df = df.loc[df['fid'] == fid,['date', 'via']]
    # Prophet expects ds and y as columns
    temp_df.columns = ['ds', 'y']
    # Create prophet forecasts
    # ...