2015-03-04 3 views
8

Есть ли стандартный (или доступный) способ экспортировать модель временного ряда в R? PMML будет работать, но при II попытке использовать библиотеку PMML, возможно, неправильно, я получаю сообщение об ошибке:Как я могу экспортировать модель временного ряда в R?

Например, мой код выглядит примерно так:

require(fpp) 
library(forecast) 
library(pmml) 
data <- ts(livestock, start = 1970, end = 2000,frequency=3) 
model <- ses(data , h=10) 
export <- pmml(model) 

И ошибка я получаю:

Error in UseMethod("pmml") : no applicable method for 'pmml' applied to an object of class "forecast" 
+0

Там нет 'pmml.forecast' перечисленных в' pmml'?. Вероятно, причина, по которой вы получаете эту ошибку. –

+0

Есть ли возможность создать pmml для временных рядов? –

+0

Возможно, обратитесь непосредственно к поддерживающему пакет 'supporter (" pmml ")'. –

ответ

1

Вот что я могу сказать:

При использовании ses(), вы не создаете модель; вы используете модель для поиска прогноза (в частности, делая прогноз через экспоненциальное сглаживание для временного ряда). Ваш результат не является предсказательной моделью, а скорее конкретным предсказанием модели для конкретного набора данных. Хотя я не знаком с PMML, из того, что я могу сказать, это не предназначено для работы, на которую вы пытаетесь ее использовать.

Если вы хотите экспортировать временные ряды и результат, я бы сказал, что лучше всего будет экспортировать файл .csv с данными; почти все может читать .csv. Объект ts - это не более чем прославленный вектор, поэтому вы можете экспортировать данные и время. Кроме того, model - это всего лишь таблица с данными. Так что попробуйте это:

write.csv(model, file="forecast.csv") 

Если вы хотите, чтобы написать ts объект, попробуйте одно из следующих действий:

write.csv(data, file="ts1.csv") # No dates for index 
write.csv(cbind("time" = time(data), "val" = data), file = "ts2.csv") # Adds dates 
Смежные вопросы