2016-06-17 3 views
2

Я новичок в Tableau, я пытаюсь написать R Script для модели ARIMA, но я получаю ошибку.R сценарий для модели ARIMA в таблице

Я написал этот код

SCRIPT_REAL(" 
    library(forecast) 
    data <- ts(.arg2,start=c(2003,1),frequency=12); 
    ARIMAfit <- auto.arima(log10(data),approximation=FALSE,trace=FALSE); 
    fcast <- forecast(ARIMAfit,h=5); 

", 

ATTR(MONTH([New])), SUM([Number of Tractor Sold])) 

Tableau показывает «Расчет действителен», но когда я пытаюсь построить мой предсказал результат его показ ..

the result returned by the script function is of an unexpected type 

Любой вид помощи или отрезанный код будет очень полезен для меня. Спасибо ...

+0

Вы, вероятно, нужно возвращать результат в последней строке вашего результата. Поэтому просто добавьте fcast внизу. – lmkirvan

+0

@lmkirvan Вы можете показать мне, как добавить fcast внизу кода? это будет очень полезно для меня, поскольку я совершенно новый в сценарии tableau. – anindya

+0

Я нахожусь на своем телефоне, но я верю, что вы вернетесь в таблицу последней строки вашего кода, которая является оператором присваивания. Вы хотите вернуть фактический вектор назначенных чисел. Поэтому просто добавьте строку, которая будет печатать вектор на консоли. Здесь я думаю, что вы сохранили его как fcast (или какую-то часть объекта fcast). – lmkirvan

ответ

0

Попробуйте это, он будет работать;

SCRIPT_REAL(" 
    library(forecast) 
    data <- ts(.arg1,start=c(2003,1),frequency=12); 
    ARIMAfit <- auto.arima(log10(data),approximation=FALSE,trace=FALSE); 
    fcast <- forecast(ARIMAfit,h=5);", SUM([Number of Tractor Sold])) 

Кроме того, если вы хотите, вы можете добавить RMSE и MÄE результаты -

пожалуйста найти пример ценам ниже

SCRIPT_STR(
"rmse <- function(error){ sqrt(mean(error^2))} 
mae <- function(error){ mean(abs(error))} 
tsfa1 = ts(.arg1,frequency=12,start = c(2012,6)) 

library(forecast) 
fit1 = Arima(tsfa1, order=c(0,0,0),seasonal=c(1,1,0), include.mean = FALSE,include.drift=TRUE) 
fcast<- forecast(fit1) 
paste(fcast$fit, fcast$residuals, sep='~')",SUM([NET])) 
Смежные вопросы