我正在尝试使用forecast.holtwinters函数,当我尝试运行它时:
dftimeseriesforecast <- forecast.HoltWinters(data, h=65)
我收到此错误:
错误:找不到功能“forecast.HoltWinters”
我也试过这个:
dftimeseriesforecast= forecast::forecast.HoltWinters(data, h=65)
但我收到此错误消息:
错误:'forecast.HoltWinters'不是'namespace:forecast'中的导出对象
我使用以下代码查看预测包中的这个函数列表:
ls("package:forecast")
这会返回:
[1]“%>%”“准确度”“Acf”“arfima”“Arima”“arima.errors”“arimaorder”“auto.arima” [9]“autolayer”“baggedETS”“bats”“bizdays”“bld.mbb.bootstrap”“BoxCox”“BoxCox.lambda”“Ccf” [17]“checkresiduals”“croston”“CV”“CVar”“dm.test”“dshw”“复活节”“ets” [25]“findfrequency”“forecast”“forecast.ets”“fourier”“fourierf”“gas”“geom_forecast”“GeomForecast” [33]“getResponse”“ggAcf”“ggCcf”“gghistogram”“gglagchull”“gglagplot”“ggmonthplot”“ggPacf” [41]“ggseasonplot”“ggsubseriesplot”“ggtaperedacf”“ggtaperedpacf”“ggtsdisplay”“gold”“holt”“hw” [49]“InvBoxCox”“is.acf”“is.Arima”“is.baggedETS”“is.bats”“is.constant”“is.ets”“is.forecast” [57]“is.mforecast”“is.nnetar”“is.nnetarmodels”“is.splineforecast”“is.stlm”“ma”“meanf”“monthdays” [65]“msts”“na.interp”“天真”“ndiffs”“nnetar”“nsdiffs”“Pacf”“余额” [73]“rwf”“seasadj”“季节性”“seasondummy”“seasonaldummyf”“seasonplot”“ses”“sindexf” [81]“snaive”“splinef”“StatForecast”“stlf”“stlm”“taperedacf”“taperedpacf”“taylor” [89]“tbats”“tbats.components”“thetaf”“trendcycle”“tsclean”“tsCV”“tsdisplay”“tslm” [97]“tsoutliers”“wineind”“woolyrnq”
有谁知道发生了什么?我以前用过这个,没有问题。我正在使用预测版本8.1。
这些都不属于forecast
包。他们在stats
:
> m <- stats::HoltWinters(co2)
> class(m)
[1] "HoltWinters"
> p = predict(m)
> pp = stats:::predict.HoltWinters(m)
> p
Jan
1998 365.1079
> pp
Jan
1998 365.1079
predict.HoltWinters
是来自stats
的未发布的函数,只能在HoltWinters()
的对象上调用。
forecast.HoltWinters
是来自forecast
的未发布的函数,这意味着您需要三个冒号才能访问它。但是你永远不应该这样做,因为当你在forecast
的输出上运行HoltWinters()
时应该自动找到它:
> m <- stats::HoltWinters(co2)
> forecast(m)
Point Forecast Lo 80 Hi 80 Lo 95 Hi 95
Jan 1998 365.1079 364.7139 365.5019 364.5053 365.7105
Feb 1998 365.9664 365.5228 366.4100 365.2879 366.6449
[etc]
与...一样:
> forecast:::forecast.HoltWinters(m)
Point Forecast Lo 80 Hi 80 Lo 95 Hi 95
Jan 1998 365.1079 364.7139 365.5019 364.5053 365.7105
Feb 1998 365.9664 365.5228 366.4100 365.2879 366.6449
[etc]
使用这样:
forecast:::forecast.HoltWinters().
它会工作。
当使用R v3.4.4和预测v8.2时,这适用于我:
hw <- stats::HoltWinters(data)
forecast_data <- forecast(hw, h=65)
使用:
forecast_data <-forecast(mydata #data name,h=56)
更新你的r
版本后它会工作
你可以尝试下面的代码,它会工作。你不需要HoltWinters.forecast。
dftimeseries.hw <- HoltWinters(data)
dftimeseries.forecast <-forecast(dftimeseries.hw,h=65)