首页 > 解决方案 > R - 如何按组预测具有多个变量的每日时间序列

问题描述

我是按组进行时间序列预测的新手。

我有一个大型的每日时间序列数据集,我需要对其进行预测。

我做了很多谷歌搜索,尝试了很多不同的方法,但都没有成功。

date    country device  os  browser visits  clicks  logins  sale
7/29/2018   USA desktop Windows Firefox 3046    1523    762 381
7/29/2018   USA mobile  Windows Firefox 6546    3273    1637    818
7/29/2018   USA tablet  Windows Firefox 864 432 216 108
7/30/2018   USA desktop Windows Firefox 11004   5502    2751    1376
7/30/2018   USA mobile  Windows Firefox 7938    3969    1985    992
7/30/2018   USA tablet  Windows Firefox 1114    557 279 139
7/31/2018   USA desktop Windows Firefox 10814   5407    2704    1352
7/31/2018   USA mobile  Windows Firefox 7560    3780    1890    945
7/31/2018   USA tablet  Windows Firefox 984 492 246 123

这是我生成的示例数据集,因为我找不到任何其他可以正确代表我的问题的开放数据集。(如果样本数量不好,请道歉)

我希望按“国家”、“设备”、“操作系统”和“浏览器”预测该数据集接下来“n”天的每日“访问次数”、“点击次数”、“登录次数”、“销售额”

任何帮助将不胜感激。

标签: rtime-seriestidyverseforecastingforecast

解决方案


这正是我们正在开发tsibblefable包的用例。tsibble在 CRAN ( https://cran.r-project.org/package=tsibble ) 上,而fable仍然只在 github ( https://github.com/tidyverts/fable ) 上。

你可以做这样的事情来预测clicks,countrydevice:osbrowser

library(tsibble)
library(fable)
mydata <- tsibble(dataframe, key = c(country, device, os, browser), index=date)
mydata %>%
  model(ETS(clicks)) %>%
  forecast()

推荐阅读