Повторное использование модели из пакета прогноза R
Мне сказали, что при использовании пакета прогноза R можно повторно использовать модель. То есть после кода x <- c(1,2,3,4); mod <- ets(x); f <- forecast(mod,h=1)
можно было бы append(x, 5)
и прогнозировать следующее значение без пересчета модели. Как это сделать? (Как я понимаю, при использовании простого экспоненциального сглаживания нужно знать только альфу, верно?)
Это как forecast(x, model=mod)
? Если это так, я должен сказать, что я использую Java и вызываю код прогноза программно (для многих временных рядов), поэтому я не думаю, что смогу постоянно сохранять объект модели в среде R. Будет ли простой способ сохранить объект модели в Java и при необходимости загрузить его в среду R?
2 ответа
У вас есть два вопроса здесь:
А) Может ли forecast
пакет "вырастит" свои наборы данных? Я не могу подробно рассказать об этом пакете, и вам придется взглянуть на его документ. Тем не менее, R модели в целом подчиняются структуре
fit <- someModel(formula, data) estfit <- predict(fit, newdata=someDataFrame)
Например, вы предоставляете обновленные данные с учетом подходящего объекта.
Б) Могу ли я сериализовать модель туда и обратно на Java? Да, ты можешь. Rserve это один объект, вы также можете попробовать основные serialize()
в (сырой) характер. Или даже просто сохранить (fit, file="someFile.RData").
По поводу вашего первого вопроса:
x <- 1:4
mod <- ets(x)
f1 <- forecast(mod, h=1)
x <- append(x, 5)
mod <- ets(x, model=mod) # Reuses old mod without re-estimating parameters.
f2 <- forecast(mod, h=1)