提取 ARIMA 系数以用于自定义函数
Extracting ARIMA coefficients for use in custom function
我想运行一个基于ARIMA模型的自定义函数。该函数从 ARIMA (2, 0, 3) 模型 运行 中调用一年的每日数据的 ma3 系数,并从每个公司的 2 中减去 ma3 系数。我有五家公司 5 年的每日数据,因此每家公司都应该有 5 年的价值。我的代码:
>Stressy =function(x) 2-summary(arima(x, order=c(2,0,3)))$coefficients[1, "ma3"]
>Funny = aggregate(cbind(QQ) ~ Year + Firm , df, FUN = Stressy)
运行 我的代码出现以下错误:
Error in summary(arima(x, order = c(2, 0, 3)))$coefficients : $ operator is invalid for atomic vectors
我知道可以手动估计结果,但我的数据集足够大,手动处理时会造成混淆。请建议修改以解决此问题。
有两种方法可以获得ma3系数:
Stressy <- function(x) 2-coef(arima(x, order=c(2,0,3)))["ma3"]
或
Stressy <- function(x) 2-arima(x, order=c(2,0,3))$coef["ma3"]
您原来的自定义函数不起作用,因为 summary(arima_object)
给了您一个 table,您不能对其应用 $
运算符:
x <- arima(df, c(2,0,3))
class(summary(x))
[1] "summaryDefault" "table"
我想运行一个基于ARIMA模型的自定义函数。该函数从 ARIMA (2, 0, 3) 模型 运行 中调用一年的每日数据的 ma3 系数,并从每个公司的 2 中减去 ma3 系数。我有五家公司 5 年的每日数据,因此每家公司都应该有 5 年的价值。我的代码:
>Stressy =function(x) 2-summary(arima(x, order=c(2,0,3)))$coefficients[1, "ma3"]
>Funny = aggregate(cbind(QQ) ~ Year + Firm , df, FUN = Stressy)
运行 我的代码出现以下错误:
Error in summary(arima(x, order = c(2, 0, 3)))$coefficients : $ operator is invalid for atomic vectors
我知道可以手动估计结果,但我的数据集足够大,手动处理时会造成混淆。请建议修改以解决此问题。
有两种方法可以获得ma3系数:
Stressy <- function(x) 2-coef(arima(x, order=c(2,0,3)))["ma3"]
或
Stressy <- function(x) 2-arima(x, order=c(2,0,3))$coef["ma3"]
您原来的自定义函数不起作用,因为 summary(arima_object)
给了您一个 table,您不能对其应用 $
运算符:
x <- arima(df, c(2,0,3))
class(summary(x))
[1] "summaryDefault" "table"