2016-06-17 6 views
2

Ich bin neu in Tableau, ich versuche, R-Skript für ARIMA-Modell zu schreiben, aber ich bekomme Fehler.R-Skript für ARIMA-Modell in Tableau

Ich schrieb diesen Code

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 zeigt die „Berechnung gültig ist“, aber wenn ich versuche, meine vorhergesagt zu plotten seine Vorführung führen ..

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

Jede Art von Hilfe oder gekippter Code wird sehr hilfreich für mich sein. Danke ...

+0

Sie wahrscheinlich das Ergebnis als die letzte Zeile des Ergebnis zurückgeben müssen. Fügen Sie einfach einen fcast am unteren Rand hinzu. – lmkirvan

+0

@lmkirvan können Sie mir bitte zeigen, wie fcast am unteren Rand des Codes hinzufügen? Es wird sehr hilfreich für mich sein, da ich im Tableau-Skript völlig neu bin. – anindya

+0

Ich bin auf meinem Telefon, aber ich glaube, Sie sind zurück zu Tableau die letzte Zeile Ihres Codes, die eine Zuweisung Anweisung ist. Sie möchten den tatsächlichen Vektor der Zahlen, die Sie zuweisen, zurückgeben. Fügen Sie einfach eine Zeile hinzu, die den Vektor auf der Konsole ausgibt. Hier denke ich, dass Sie es als fcast (oder einen Teil des fcast-Objekts) gespeichert haben. – lmkirvan

Antwort

0

Versuchen Sie es, es wird funktionieren;

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])) 

Auch wenn Sie möchten, dass Sie rmse und mae Ergebnisse hinzufügen können -

bitte finden Beispiel unten-

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]))