2017-09-23 10 views
2

Guten Morgen,
Ich verwende derzeit eine Zeitreihe des täglichen Verkaufs, um Prognosen zu machen.
Der Datensatz mit der Bezeichnung myts wurde zuvor in time series Objekt umgewandelt.Prognose mit TsDyn - Fehler in R

Jedes Mal, wenn ich den folgenden Code ausführen, es gibt mir ein Fehler:

require(tsDyn) 
x <- log(myts) 
mod.ar <- linear(x, m=2) 

Error: x must be a vector, not a ts object, do you want stats::lag() ?

Mit freundlichen Grüßen, Alex

Antwort

1

Versuchen Sie dieses Beispiel (Beachten Sie, dass ich mit einem Vektor beginnen und dann wandeln Sie es in ein Zeitserienobjekt um)

require(tsDyn) 

set.seed(1234) 
tsdatav <- (seq(1:300)+rnorm(300,1000,10)) 
myts <- ts(tsdatav, frequency = 365, start = c(2017, 6)) 
plot(myts) 

x <- log(myts) 
mod.ar <- linear(x, m = 2) 
mod.ar 
1

Das von Alessandro gemeldete Problem kann durch die lag-Funktion von dplyr erzeugt werden, die die lag-Funktion von stats übersteuert.
Try this:

detach("package:dplyr", unload=TRUE) 
library(tsDyn) 
linear(log(lynx), m=2) 

Hier linear Werke geben richtig:

Non linear autoregressive model 

AR model 
Coefficients: 
    const  phi.1  phi.2 
2.4352150 1.3842377 -0.7477757 

Nun versuchen Sie dies:

detach("package:tsDyn", unload=TRUE) 
library(dplyr) 
library(tsDyn) 
linear(log(lynx), m=2) 

Der Code gibt die Fehlermeldung:

Error: `x` must be a vector, not a ts object, do you want `stats::lag()`? 
+0

Ausgezeichneter Fund Marco! – dmb