未找到预测包中的 R forecast.holtwinters
Posted
技术标签:
【中文标题】未找到预测包中的 R forecast.holtwinters【英文标题】:R forecast.holtwinters in forecast package not found 【发布时间】:2018-01-04 14:25:24 【问题描述】:我正在尝试使用 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" "easter" "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” “naive” “ndiffs” “nnetar” “nsdiffs” “Pacf” “剩余” [73] “rwf” “seasadj” “seasonal” “seasonaldummy” “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。
【问题讨论】:
【参考方案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
的未导出函数,这意味着您需要 三个 冒号才能访问它。但是您应该永远不必这样做,因为当您在HoltWinters()
的输出上运行forecast
时应该会自动找到它:
> 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]
【讨论】:
我刚查了一下,predict.Holtwinters 是这样,但 predict.Holtwinters 不是这样。预测 pdf 列出了 forecast.Holtwinters 和 stats:::forecast.HoltWinters 不起作用。我犯了同样的错误。 cran.r-project.org/web/packages/forecast/forecast.pdf。但是,predict.holtwinters 和 predict.Holtwinters 一样好,所以我可以使用它。谢谢@Spacedman 我觉得这个答案有点匆忙。您需要三个冒号才能获得未导出的函数,但您永远不必这样做。请参阅编辑。 另外,我安装了旧版本 R 3.2 而不是当前版本,并且 forecast.holtwinters 和 predict.holtwinters 存在并且工作正常,所以我认为 R 版本和预测 8.1 存在问题。但是,holtwinters 也适用于 stats 包。【参考方案2】:这样使用:
forecast:::forecast.HoltWinters().
它会起作用的。
【讨论】:
【参考方案3】:这适用于我使用 R v3.4.4 和预测 v8.2 时:
hw <- stats::HoltWinters(data)
forecast_data <- forecast(hw, h=65)
【讨论】:
【参考方案4】:你可以试试下面的代码,它会工作的。你不需要 HoltWinters.forecast。
dftimeseries.hw <- HoltWinters(data)
dftimeseries.forecast <-forecast(dftimeseries.hw,h=65)
【讨论】:
【参考方案5】:用途:
forecast_data <-forecast(mydata #data name,h=56)
更新您的r
版本后,它将起作用
【讨论】:
以上是关于未找到预测包中的 R forecast.holtwinters的主要内容,如果未能解决你的问题,请参考以下文章
R 中 h2o 包中的 predict.H2OModel() 是不是为 h2o.randomForest() 模型提供 OOB 预测?
R语言构建回归模型并进行模型诊断(线性关系不满足时)进行变量变换(Transforming variables)使用car包中的boxTidwell函数对预测变量进行Box–Tidwell变换
R语言mgcv包中的gam函数拟合广义加性模型(Generalized Additive Model)GAM(对非线性变量进行样条处理计算RMSER方调整R方可视化模型预测值与真实值的曲线)
R语言使用car包中的avPlots函数创建变量添加图(Added-variable plots)在图像交互中,在变量添加图中手动标识(添加)对于每一个预测变量影响较大的强影响点