arima0
位于 stats
包(package)。 说明
将 ARIMA 模型拟合到单变量时间序列,并根据拟合模型进行预测。
用法
arima0(x, order = c(0, 0, 0),
seasonal = list(order = c(0, 0, 0), period = NA),
xreg = NULL, include.mean = TRUE, delta = 0.01,
transform.pars = TRUE, fixed = NULL, init = NULL,
method = c("ML", "CSS"), n.cond, optim.control = list())
## S3 method for class 'arima0'
predict(object, n.ahead = 1, newxreg, se.fit = TRUE, ...)
参数
x |
单变量时间序列 |
order |
ARIMA 模型非季节性部分的规范:三个组成部分 是 AR 阶数、差分度和 MA 阶数。 |
seasonal |
ARIMA 模型的季节性部分的规范,加上周期(默认为 |
xreg |
(可选)外部回归量的向量或矩阵,其行数必须与 |
include.mean |
ARIMA 模型是否应该包含均值项?对于无差异序列,默认值为 |
delta |
指示应在哪个点使用“快速递归”的值。请参阅“详细信息”部分。 |
transform.pars |
逻辑性强。如果为真,则对 AR 参数进行变换以确保它们保持在平稳区域内。不用于 |
fixed |
长度与参数总数相同的可选数值向量。如果提供,则只有 |
init |
初始参数值的可选数值向量。除回归系数外,缺失值将用零填充。 |
method |
拟合方法:最大似然或最小化条件平方和。可以缩写。 |
n.cond |
仅在通过 conditional-sum-of-squares 拟合时使用:要忽略的初始观测值的数量。如果小于 AR 项的最大滞后,它将被忽略。 |
optim.control |
|
object |
|
newxreg |
用于预测的 |
n.ahead |
需要预测的前方步数。 |
se.fit |
逻辑:是否应该返回预测的标准误差? |
... |
传递给其他方法或从其他方法传递的参数。 |
细节
ARMA 模型的不同定义对于 AR 和/或 MA 系数具有不同的符号。这里的定义有
因此MA系数的符号与S-PLUS的符号不同。此外,如果 include.mean
为 true,则此公式适用于 而不是 。对于具有差分的 ARIMA 模型,差分序列遵循 zero-mean ARMA 模型。
估计的方差矩阵是从对数似然的 Hessian 矩阵中找到的,因此可能只是一个粗略的指导,特别是对于接近可逆边界的拟合。
优化由 optim
完成。如果 xreg
中的列粗略缩放至零均值和单位方差,则效果最佳,但会尝试估计合适的缩放比例。
使用Finite-history预测。仅当拟合的 MA 部分可逆时,这才在统计上有效,因此 predict.arima0
将为不可逆 MA 模型发出警告。
值
对于 arima0
,包含组件的类 "arima0"
列表:
coef |
AR、MA 和回归系数的向量, |
sigma2 |
创新方差的 MLE。 |
var.coef |
系数的估计方差矩阵 |
loglik |
(差异数据的)最大对数似然,或所使用的近似值。 |
arma |
规范的紧凑形式,作为向量给出 AR、MA、季节性 AR 和季节性 MA 系数的数量,以及周期以及非季节性和季节性差异的数量。 |
aic |
对应于对数似然的 AIC 值。仅对 |
residuals |
适合的创新。 |
call |
匹配的调用。 |
series |
系列的名称 |
convergence |
|
n.cond |
拟合中未使用的初始观测值的数量。 |
对于 predict.arima0
,预测的时间序列,或者如果 se.fit = TRUE
,则包含组件 pred
的列表(预测)和 se
(估计的标准误差)。两个组成部分都是时间序列。
装配方法
确切的可能性是通过 ARMA 过程的状态空间表示以及基于 Gardner 等人 (1980) 的卡尔曼滤波器发现的创新及其方差来计算的。如果创新方差足够接近其渐近界限,则可以选择切换到“快速递归”(假设实际上无限的过去)。参数 delta
设置容差:在其默认值下,近似值通常可以忽略不计,而加速相当可观。通过将delta
设置为负值可以确保精确计算。
如果 transform.pars
为 true,则使用替代参数化来完成优化,该参数化是 Jones (1980) 建议的变体,并确保模型是平稳的。对于 AR(p) 模型,参数化是通过部分自相关的反正切函数进行的:相同的过程(分别)应用于 AR 和季节性 AR 项。如果 transform.pars
为真,则 MA 项在优化期间也被限制为可逆的,通过相同的变换。请注意,MA 项的 MLE 有时确实出现在具有单位根的 MA 多项式中:此类模型可以通过使用 transform.pars = FALSE
并指定一组良好的初始值来拟合(通常可以通过 transform.pars = TRUE
拟合获得)。
允许缺失值,但任何缺失值都会强制忽略 delta
并使用完整递归。请注意,缺失值将通过差分传播,因此在这种情况下,此函数中使用的过程并不完全有效。
提供条件平方和主要用于说明目的。这将计算从观察 n.cond
开始的拟合创新的平方和(其中 n.cond
至少是 AR 项的最大滞后),将所有早期创新视为零。参数 n.cond
可用于允许不同拟合之间的比较。 “部分对数似然”是第一项,即估计均方对数的一半。允许缺失值,但会导致许多创新缺失。
当指定回归量时,除非任何系数是固定的,否则它们会在拟合之前正交化。将回归量粗略缩放至零均值和单位方差可能会有所帮助。
注意
这是初步版本,将被 arima
取代。
预测的标准误差排除了 ARMA 模型和回归系数估计的不确定性。
结果可能与 S-PLUS 的 arima.mle
不同,后者计算条件似然且不包括模型中的均值。此外,arima.mle
使用的约定反转了 MA 系数的符号。
例子
## Not run: arima0(lh, order = c(1,0,0))
arima0(lh, order = c(3,0,0))
arima0(lh, order = c(1,0,1))
predict(arima0(lh, order = c(3,0,0)), n.ahead = 12)
arima0(lh, order = c(3,0,0), method = "CSS")
# for a model with as few years as this, we want full ML
(fit <- arima0(USAccDeaths, order = c(0,1,1),
seasonal = list(order=c(0,1,1)), delta = -1))
predict(fit, n.ahead = 6)
arima0(LakeHuron, order = c(2,0,0), xreg = time(LakeHuron)-1920)
## Not run:
## presidents contains NAs
## graphs in example(acf) suggest order 1 or 3
(fit1 <- arima0(presidents, c(1, 0, 0), delta = -1)) # avoid warning
tsdiag(fit1)
(fit3 <- arima0(presidents, c(3, 0, 0), delta = -1)) # smaller AIC
tsdiag(fit3)
## End(Not run)
参考
Brockwell, P. J. and Davis, R. A. (1996). Introduction to Time Series and Forecasting. Springer, New York. Sections 3.3 and 8.3.
Gardner, G, Harvey, A. C. and Phillips, G. D. A. (1980). Algorithm AS 154: An algorithm for exact maximum likelihood estimation of autoregressive-moving average models by means of Kalman filtering. Applied Statistics, 29, 311-322. doi:10.2307/2346910.
Harvey, A. C. (1993). Time Series Models. 2nd Edition. Harvester Wheatsheaf. Sections 3.3 and 4.4.
Harvey, A. C. and McKenzie, C. R. (1982). Algorithm AS 182: An algorithm for finite sample prediction from ARIMA processes. Applied Statistics, 31, 180-187. doi:10.2307/2347987.
Jones, R. H. (1980). Maximum likelihood fitting of ARMA models to time series with missing observations. Technometrics, 22, 389-395. doi:10.2307/1268324.
也可以看看
相关用法
- R arima.sim 从 ARIMA 模型进行模拟
- R arima 时间序列的 ARIMA 建模
- R ar.ols 通过 OLS 将自回归模型拟合到时间序列
- R ar 将自回归模型拟合到时间序列
- R aggregate 计算数据子集的汇总统计
- R alias 查找模型中的别名(依赖项)
- R anova.glm 广义线性模型拟合的偏差分析
- R anova.mlm 多元线性模型之间的比较
- R addmargins 在多维表或数组上设置任意边距
- R anova 方差分析表
- R asOneSidedFormula 转换为单边公式
- R as.hclust 将对象转换为 hclust 类
- R ansari.test 安萨里-布拉德利检验
- R approxfun 插值函数
- R add1 在模型中添加或删除所有可能的单项
- R acf 自协方差和互协方差以及相关函数估计
- R aov 拟合方差分析模型
- R ave 因子水平组合的组平均值
- R acf2AR 计算精确拟合 ACF 的 AR 过程
- R anova.lm 线性模型拟合的方差分析
- R stlmethods STL 对象的方法
- R medpolish 矩阵的中值波兰(稳健双向分解)
- R naprint 调整缺失值
- R summary.nls 总结非线性最小二乘模型拟合
- R summary.manova 多元方差分析的汇总方法
注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 ARIMA Modelling of Time Series – Preliminary Version。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。