早上好,
我目前正在使用日常銷售的時間序列進行預測。
該數據集稱爲myts
,此前已轉換爲time series
對象。使用tsDyn進行預測 - 錯誤R
每當我運行下面的代碼,它給了我一個錯誤:
require(tsDyn)
x <- log(myts)
mod.ar <- linear(x, m=2)
Error:
x
must be a vector, not a ts object, do you wantstats::lag()
?
最好的問候, 亞歷
早上好,
我目前正在使用日常銷售的時間序列進行預測。
該數據集稱爲myts
,此前已轉換爲time series
對象。使用tsDyn進行預測 - 錯誤R
每當我運行下面的代碼,它給了我一個錯誤:
require(tsDyn)
x <- log(myts)
mod.ar <- linear(x, m=2)
Error:
x
must be a vector, not a ts object, do you wantstats::lag()
?
最好的問候, 亞歷
試試這個例子(注意,我開始與載體然後將其轉換爲時間序列對象)
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
Alessandro報告的問題可以由dplyr
的lag
函數生成,該函數覆蓋stats
的lag
函數。
試試這個:
detach("package:dplyr", unload=TRUE)
library(tsDyn)
linear(log(lynx), m=2)
這裏linear
正常工作,並提供:
Non linear autoregressive model
AR model
Coefficients:
const phi.1 phi.2
2.4352150 1.3842377 -0.7477757
現在試試這個:
detach("package:tsDyn", unload=TRUE)
library(dplyr)
library(tsDyn)
linear(log(lynx), m=2)
的代碼提供了錯誤信息:
Error: `x` must be a vector, not a ts object, do you want `stats::lag()`?
很棒的發現馬可波羅! – dmb