如何从 tbats 函数获取模型名称,R 中的预测包
how to get model name from tbats function, forecast package in R
我正在尝试从 tbats 输出中获取模型参数。
当我打印如下输出时,带有参数的模型名称从 "fitted" 完全打印在控制台中。但我个人无法从拟合中提取参数。
>fitted <- tbats(timeseries)
>fitted
当我查看参数时,我发现这些变量 [lambda、alpha、beta、damping.parameter、gamma.one.values、gamma.two.values、ar.coefficients、ma.coefficients, 似然, optim.return.code, 方差, AIC, 参数, seed.states, fitted.values, 误差, x, seasonal.periods, k.vector, y, p, q, call, series, method] 但其中没有一个是 Omega (box cox transform argument)。我可以从 damping.parameter、p、q、seasonal.periods、k.vector 中绘制模型的其余部分。
获取模型名称:
library(forecast)
fit <- tbats(USAccDeaths)
as.character(fit)
#> [1] "TBATS(1, {0,0}, -, {<12,5>})"
看看打印函数,看看它是如何构造输出的:
> forecast:::print.tbats
function (x, ...)
{
cat(as.character(x))
cat("\n")
cat("\nCall: ")
print(x$call)
cat("\nParameters")
if (!is.null(x$lambda)) {
cat("\n Lambda: ")
cat(round(x$lambda, 6))
}
cat("\n Alpha: ")
cat(x$alpha)
if (!is.null(x$beta)) {
cat("\n Beta: ")
cat(x$beta)
cat("\n Damping Parameter: ")
cat(round(x$damping.parameter, 6))
}
if (!is.null(x$gamma.one.values)) {
cat("\n Gamma-1 Values: ")
cat(x$gamma.one.values)
}
if (!is.null(x$gamma.two.values)) {
cat("\n Gamma-2 Values: ")
cat(x$gamma.two.values)
}
if (!is.null(x$ar.coefficients)) {
cat("\n AR coefficients: ")
cat(round(x$ar.coefficients, 6))
}
if (!is.null(x$ma.coefficients)) {
cat("\n MA coefficients: ")
cat(round(x$ma.coefficients, 6))
}
cat("\n")
cat("\nSeed States:\n")
print(x$seed.states)
cat("\nSigma: ")
cat(sqrt(x$variance))
cat("\nAIC: ")
cat(x$AIC)
cat("\n")
}
我正在尝试从 tbats 输出中获取模型参数。 当我打印如下输出时,带有参数的模型名称从 "fitted" 完全打印在控制台中。但我个人无法从拟合中提取参数。
>fitted <- tbats(timeseries)
>fitted
当我查看参数时,我发现这些变量 [lambda、alpha、beta、damping.parameter、gamma.one.values、gamma.two.values、ar.coefficients、ma.coefficients, 似然, optim.return.code, 方差, AIC, 参数, seed.states, fitted.values, 误差, x, seasonal.periods, k.vector, y, p, q, call, series, method] 但其中没有一个是 Omega (box cox transform argument)。我可以从 damping.parameter、p、q、seasonal.periods、k.vector 中绘制模型的其余部分。
获取模型名称:
library(forecast)
fit <- tbats(USAccDeaths)
as.character(fit)
#> [1] "TBATS(1, {0,0}, -, {<12,5>})"
看看打印函数,看看它是如何构造输出的:
> forecast:::print.tbats
function (x, ...)
{
cat(as.character(x))
cat("\n")
cat("\nCall: ")
print(x$call)
cat("\nParameters")
if (!is.null(x$lambda)) {
cat("\n Lambda: ")
cat(round(x$lambda, 6))
}
cat("\n Alpha: ")
cat(x$alpha)
if (!is.null(x$beta)) {
cat("\n Beta: ")
cat(x$beta)
cat("\n Damping Parameter: ")
cat(round(x$damping.parameter, 6))
}
if (!is.null(x$gamma.one.values)) {
cat("\n Gamma-1 Values: ")
cat(x$gamma.one.values)
}
if (!is.null(x$gamma.two.values)) {
cat("\n Gamma-2 Values: ")
cat(x$gamma.two.values)
}
if (!is.null(x$ar.coefficients)) {
cat("\n AR coefficients: ")
cat(round(x$ar.coefficients, 6))
}
if (!is.null(x$ma.coefficients)) {
cat("\n MA coefficients: ")
cat(round(x$ma.coefficients, 6))
}
cat("\n")
cat("\nSeed States:\n")
print(x$seed.states)
cat("\nSigma: ")
cat(sqrt(x$variance))
cat("\nAIC: ")
cat(x$AIC)
cat("\n")
}