r - 使用列表时将国家假期添加到先知模型
问题描述
我希望将美国假期添加到我的数据中,以便使用 Facebook 先知功能进行建模。
我可以在模型拟合时添加预定义的假期列表,即 NFL 季后赛和超级碗日期,但似乎国家假期需要在模型拟合之前进行拟合。
从文档中可以看出,国家假期已添加到先知对象中,然后进行拟合,但我不确定在使用地图作为数据对象(.x)时如何执行此操作需要在使用地图时指定
如何使用数据框列表将美国假期添加到我的模型中?
这是我的代码到目前为止的样子:
#install.packages("pacman")
#library(pacman)
# LOAD LIBRARIES
pacman::p_load(tidyquant,tidyverse,prophet,purrr)
# SPECIFY STOCKS TO PULL
tickers = c("AAPL","AMZN")
# GET STOCK PRICE INFO
getSymbols(tickers,
from = '2013-01-01',
to = '2016-06-30',
warnings = FALSE,
auto.assign = TRUE)
# MAP DATAFRAMES TO A LIST
dfList <- mget(tickers) %>%
map(~ fortify.zoo(.x) %>%
select(1,5) %>%
rename(ds = 1,
y = 2))
# SPECIFY NFL IMPORTANT DATES
playoffs <- tibble(
holiday = 'playoff',
ds = as.Date(c('2008-01-13', '2009-01-03', '2010-01-16',
'2010-01-24', '2010-02-07', '2011-01-08',
'2013-01-12', '2014-01-12', '2014-01-19',
'2014-02-02', '2015-01-11', '2016-01-17',
'2016-01-24', '2016-02-07')),
lower_window = 0,
upper_window = 1
)
superbowls <- tibble(
holiday = 'superbowl',
ds = as.Date(c('2010-02-07','2011-02-06','2012-02-05','2013-02-03','2014-02-02','2015-02-01','2016-02-07','2017-02-05','2018-02-04','2019-02-03','2020-02-02')),
lower_window = 0,
upper_window = 1
)
holidays <- bind_rows(playoffs, superbowls) %>%
filter(ds >= min(dfList$AAPL$ds) & ds <= max(dfList$AAPL$ds))
# CALL THE PROPHET FUNCTION TO FIT THE MODEL
model_list <- map(dfList,
prophet,
holidays = holidays)
# TAKES THE MODEL ABOVE AND THE SPECIFIED FORECAST PERIOD TO PRODUCE A SUITABLE
# DATA FRAME
future_list <- map(model_list,
make_future_dataframe,
periods = 365)
# USE THE GENERIC PREDICT FUNCTION TO GET OUR FORECAST
forecast_list <- map2(model_list,
future_list,
predict)
解决方案
推荐阅读
- spring-boot - 为什么h2更改用户名和密码不起作用?春季启动应用
- oracle - 使用 Oracle 中的值列表进行通配符搜索
- laravel - 如何在我的刀片视图中显示图像数组?
- pandas - Pandas_datareader 读取符号失败(随机符号)
- javascript - Babel 创建输出目录但不转译任何文件
- python - 在 2D 列表中查找值的 Pythonic 方法?
- php - 当项目根目录与 PhpStorm 不同时如何访问资产?
- angular - 错误类型错误:无法读取未定义的 Angular Firebase 的属性“标题”
- javascript - 使用带有 javascript 的正则表达式来货币字符串转换
- reactjs - 在 React 测试库中测试依赖于 Stateful Context Providers 链的 React 组件