ARMA模型无历史滞后数据时初始拟合值计算方法咨询
ARMA(2,2)模型初始拟合值计算与权威参考
一、核心逻辑说明
ARMA模型的初始值处理没有绝对的“唯一正确方法”,不同统计软件(如SAS、R)会采用不同的初始化约定,本质都是为填补滞后项/残差的缺失值,保证递推计算顺利进行。
二、SAS的初始化规则(你观测到的计算方式)
针对ARMA(2,2)模型,SAS的初始拟合值计算逻辑如下:
- 第1个时间点(t=1):因t-1、t-2滞后项完全缺失,直接以模型常数项作为拟合值,即
ŷ₁ = c(c为模型常数项) - 第2个时间点(t=2):仅缺失t-2滞后项,用已有的t=1拟合值和t=1残差递推,即
ŷ₂ = c + φ₁ŷ₁ + θ₁e₁(φ₁为AR(1)系数,θ₁为MA(1)系数,e₁=y₁-ŷ₁) - 第3个时间点及以后:使用完整的ARMA(2,2)公式递推,即
ŷ₃ = c + φ₁y₂ + φ₂y₁ + θ₁e₂ + θ₂e₁
三、R中ARMA模型的初始化方法
R的stats包中arima()函数拟合ARMA模型时,主要通过两种方法处理初始值:
- 条件最小二乘法(CSS):默认假设前q个MA残差为0(q为MA阶数),AR部分则用前p个观测值作为初始滞后项(p为AR阶数),从第p+1个观测值开始计算似然
- 最大似然法(ML):会通过递推方式估算初始残差和滞后项,将整个序列的似然纳入计算,相比CSS更严谨,但计算量更大
具体细节可查看R官方文档中arima()函数的method参数说明。
四、权威参考资料
若需深入了解初始化方法的理论依据,可参考这些经典资料:
- Time Series Analysis: Forecasting and Control(Box-Jenkins经典教材):系统讲解了ARMA模型的参数估计逻辑,包括条件似然、无条件似然下的初始值处理方法,是时间序列领域的权威著作
- Introductory Time Series with R:结合R的实际操作,讲解ARMA模型的初始化与拟合细节,适合新手对照学习
- SAS官方文档:SAS/ETS模块的ARIMA过程文档中,明确说明了初始值的计算规则,可直接查阅对应模块说明
内容的提问来源于stack exchange,提问作者Stuart
相关产品推荐
相关产品推荐

