#r #forecasting
#r #прогнозирование
Вопрос:
У меня есть данные о ежедневных доходах за три года. В год наблюдается довольно постоянный рост данных, но данные носят сезонный характер с огромными пиками в 4 квартале (черная пятница, безумие перед Рождеством и т. Д.) И в целом за неделю (высокий доход в понедельник, все меньше и меньше в течение недели, самый низкий в субботу, начинает расти по воскресеньям).
Вместо того, чтобы использовать скучную электронную таблицу с линейным прогнозированием, мне нужен R-скрипт, который вводит ежедневные данные за три года и применяет алгоритм для прогнозирования ежедневного прогноза доходов на следующие 6 месяцев. Я бы хотел, чтобы входные данные представляли собой просто CSV-файл с датами и номерами доходов.
Я слышал, что ARIMA хороша, но мой друг-экономист, который видел мои данные, считает, что прогнозирование с использованием фильтров Калмана даст очень хорошие результаты.
Может ли кто-нибудь опубликовать сценарий, чтобы показать мне, как применять алгоритм ARIMA или алгоритм фильтра Калмана для прогнозирования моих данных? Спасибо!
Комментарии:
1. Это не вопрос программирования. Это также очень специфично для вашей ситуации, и вы просите, чтобы кто-то выполнил вашу работу бесплатно.
2. Я не думаю, что кто-нибудь здесь может ответить, как показать математику о том, как можно выполнить простой фильтр Калмана. Если бы я знал ответ, я бы не спрашивал.
3. Точно. Математика ! = программирование. Спросите на математическом форуме или заплатите репетитору.
Ответ №1:
Хотя у R, безусловно, есть инструменты для реализации этих анализов, они являются мощными инструментами, и, вероятно, было бы лучше, если бы вы прочитали о них и о том, как они работают … (Современная прикладная статистика Венейблса и Рипли в S может быть разумной отправной точкой, хотя я не знаю, обсуждаются ли в ней фильтры Калмана). Тем временем:
??arima
??kalman
?arima
?KalmanLike
Или, установив sos
пакет:
library("sos")
findFn("arima forecast")
findFn("kalman forecast")
Или просто погуглите «фильтр Калмана R» (!!) — я сделал и обнаружил, что первые 8 (!) просмотров выглядели очень полезными (9-е было введением в фильтры Калмана в MATLAB 🙂 )
Другие могут думать иначе, но я, как правило, потрачу больше усилий, помогая кому-то провести анализ, когда увижу, что они пытались справиться с этим самостоятельно…
Ответ №2:
Это должно быть решено с помощью регрессии. У вас будет 6 фиктивных переменных для воздействий дня недели. У вас будет 11 ежемесячных фиктивных переменных для сезонности. У вас будут фиктивные переменные для каждого из праздников.