这里是一个例子:
myFun <- arima(x, order=c(0, 0, 1))
myFun
运行时,我得到了输出:
Call:
arima(x = x, order = c(0, 0, 1))
Coefficients:
ma1 intercept
0.6023 0.1681
s.e. 0.0827 0.1424
sigma^2 estimated as 0.7958: log likelihood = -130.7, aic = 267.39
我知道我可以通过myFun$aic
获得aic的值,但是如何获得:
我已经从帮助页面help中进行搜索,但是我不知道该怎么做。
答案 0 :(得分:1)
要获取系数,可以执行coef(myFun)
或myFun$coef
myFun$coef
# ma1 intercept
#0.9999998 5.4999988
Sigma ^ 2估计
myFun$sigma2
#[1] 2.750001
和标准错误
sqrt(diag(vcov(myFun)))
# ma1 intercept
#0.3162275 1.0041626
和对数可能性
myFun$loglik
#[1] -20.44634
数据
myFun <- arima(1:10, order=c(0, 0, 1))
myFun
#Call:
#arima(x = 1:10, order = c(0, 0, 1))
#Coefficients:
# ma1 intercept
# 1.0000 5.5000
#s.e. 0.3162 1.0042
#sigma^2 estimated as 2.75: log likelihood = -20.45, aic = 46.89
答案 1 :(得分:1)
我们可以使用tidy/glance
中的broom
,它可以在一个调用中提取大部分输出
library(broom)
rowr::cbind.fill(tidy(myFun), glance(myFun))
# term estimate std.error sigma logLik AIC BIC
#1 ma1 -0.01357280 0.12869087 0.9847428 -140.3565 286.7129 294.5284
#2 intercept 0.07901125 0.09716588 0.9847428 -140.3565 286.7129 294.5284
要获取各个组件,则更容易检查结构
str(myFun)
然后我们发现它是一个命名的list
。因此,像提取任何其他list
元素一样提取元素,即对单个$
元素(按名称或索引)和[[
用list
或[
用于多个元素
有关更多信息,我们也可以选中此link
set.seed(24)
x <- rnorm(100)
myFun <- arima(x, order=c(0, 0, 1))