#r #time-series #forecast
#r #временные ряды #прогноз
Вопрос:
Кто-нибудь может дать несколько предложений относительно того, как построить tsibble?
У меня есть набор дат, который содержит четыре исходных столбца: product, market, price, date Я хочу создать объект tsibble. У меня есть key=id(product,market)
и «год недели» в качестве индекса. тогда я могу предсказать для каждого продукта на каждом рынке, какой должна быть базовая линия цены.
если вы используете nycflights13::weather
набор данных, я могу использовать key=id(origin,year)
(здесь у меня нет рынка, поэтому используйте год для представления рынка).
тогда есть idex=week(year month day)
. Затем я могу объединить столбец «год», «месяц», «день» в качестве даты, затем вычислить, week()
затем добавить год и неделю вместе как «weekyear» и настроить это как индекс, затем использовать median(temp)
для этой недели. После этой реформы набора данных у меня может быть tsibble, способный прогнозировать темп на следующие 2-4 недели.
Ответ №1:
Похоже, вы хотите сначала преобразовать date
переменную в yearweek
класс. Можете ли вы сделать
library(tsibble)
data %>%
mutate(index = yearweek(date)) %>%
as_tsibble(key = id(product, market), index = index)
Комментарии:
1. Я получил эту ошибку: > dft_ts <- dft%>% mutate (index = yearweek (дата)) %>% as_tsibble (ключ = идентификатор (artikel_id, market), индекс = индекс) Ошибка: Допустимый tsibble должен иметь отдельные строки, идентифицируемые ключом и индексом. Пожалуйста, используйте
duplicates()
для проверки дублирующихся строк.2. это работает: dft_ts <- dft %>% мутировать (yw= yearweek (дата)) %>% group_by(yw,artikel_id,market) %>% суммировать(avg_w_pric=среднее значение (med_pric)) %>% разгруппировать() %>% as_tsibble(ключ = id (artikel_id, market), индекс = yw)