Как вы используете простое экспоненциальное сглаживание в R?

9

Я новичок в R, не могли бы вы объяснить, как использовать SES в пакете прогноза R прогноз ? Я бы хотел выбрать количество начальных периодов и постоянную сглаживания.

d <- c(3,4,41,10,9,86,56,20,18,36,24,59,82,51,31,29,13,7,26,19,20,103,141,145,24,99,40,51,72,58,94,78,11,15,17,53,44,34,12,15,32,14,15,26,75,110,56,43,19,17,33,26,40,42,18,24,69,18,18,25,86,106,104,35,43,12,4,20,16,8)

У меня есть 70 периодов, я хотел бы использовать 40 периодов для начального и 30 для вне выборки.

ses(d, h=30, level=c(80,95), fan=FALSE,initial=c("simple"), alpha=.1)

Это правильно?

Roji
источник
Я предположил, что функция, на которую вы ссылаетесь, находится в пакете прогноза - если это неверно, пожалуйста, укажите, в каком пакете находится функция.
Энди W
Это в прогнозном пакете
Roji
Вот несколько примеров: otexts.org/fpp/7/1
marbel

Ответы:

15

Это сделает это:

ses(d[1:40], h=30, alpha=0.1, initial="simple")

с:

  • h быть число периодов для прогнозирования.
  • alpha являющийся параметром сглаживания уровня.
  • initial будучи методом выбора значений начального состояния

(См ?ses.)

Роб Хиндман
источник
В чем разница между функциями sesи etsфункциями? Есть ли кто лучше?
MysteryGuy
3

Вы также можете использовать функцию HoltWinters, которая доступна в базе R:

mod1 <- HoltWinters(d[1:40], alpha=0.1, beta=FALSE, gamma=FALSE)

Чтобы получить прогнозы на следующие 30 периодов, используйте

predict(mod1, n.ahead=30)
Vik
источник