0

以下 R 代码在尝试绘制 HoltWinters 图表时出现错误,如下所示

# init X
X11()

# get data
mydata = read.csv("lookup.csv", header=TRUE, stringsAsFactors=FALSE)

# data post-proc
mydata = as.data.frame(mydata)
mydata$Time = as.POSIXlt(mydata$Time, format='%d.%m.%Y %H:%M:%S')

# create time series - hourly data -> 8765 hours/year
dataTimeSeries <- ts(mydata$Close, frequency=8765)

dataForecasts = HoltWinters(dataTimeSeries, beta=FALSE, gamma=FALSE)

# output
plot.ts(dataForecasts)
message("Press Return To Continue")
invisible(readLines("stdin", n=1))

我得到的错误是:

$ Rscript simple_forecast.R

xy.coords(x, NULL, log = log) 中的错误:

(列表)对象不能被强制输入'double'

调用:plot.ts -> plotts -> xy.coords

执行停止

我很困惑,因为print(dataForecasts)打印了正确的数据。我也可以毫无问题地绘制dataTimeSeries

lookup.csv(粘贴箱)

4

1 回答 1

1

通常,应该依靠 R 来调度依赖于类的函数,并注意您在 Avril Coghlan 的页面上引用的示例仅使用了plot,而不是plot.ts.

 (m <- HoltWinters(co2))
 plot.ts(m)
Error in xy.coords(x, NULL, log = log) : 
  (list) object cannot be coerced to type 'double'

 plot(m) # success
于 2013-08-07T22:30:29.857 回答