statsmodels.tsa.arima_process.ArmaProcess

class statsmodels.tsa.arima_process.ArmaProcess(ar=None, ma=None, nobs=100)[source]

指定滞后多项式的ARMA过程的理论性质。

Parameters:
ararray_like

自回归滞后多项式的系数,包括零滞后。 必须使用滞后多项式表示法中的符号输入。 有关符号的更多信息,请参阅注释。

maarray_like

移动平均滞后多项式的系数,包括零滞后。

nobsint, optional

模拟时间序列的长度。例如,如果生成样本,则会使用此参数。请参见示例。

Attributes:
arroots

自回归滞后多项式的根

isinvertible

Arma 过程是可逆的,如果 MA 根在单位圆之外。

isstationary

ARMA 过程是平稳的,如果 AR 根在单位圆之外。

maroots

移动平均滞后多项式的根

注释

AR 和 MA 分量都必须包含零滞后的系数。在几乎所有情况下,这些值应为 1。此外,由于使用了滞后多项式表示法,AR 参数的符号应与在 ARMA 表示法中书写的符号相反。请参见下面的示例。

ARMA(p,q) 过程由以下公式描述

\[y_{t}=\phi_{1}y_{t-1}+\ldots+\phi_{p}y_{t-p}+\theta_{1}\epsilon_{t-1} +\ldots+\theta_{q}\epsilon_{t-q}+\epsilon_{t}\]

并且此函数中使用的参数化采用了滞后多项式表示法,

\[\left(1-\phi_{1}L-\ldots-\phi_{p}L^{p}\right)y_{t} = \left(1+\theta_{1}L+\ldots+\theta_{q}L^{q}\right)\epsilon_{t}\]

示例

ARMA(2,2) 模型,AR 系数为 0.75 和 -0.25,MA 系数为 0.65 和 0.35

>>> import statsmodels.api as sm
>>> import numpy as np
>>> np.random.seed(12345)
>>> arparams = np.array([.75, -.25])
>>> maparams = np.array([.65, .35])
>>> ar = np.r_[1, -arparams] # add zero-lag and negate
>>> ma = np.r_[1, maparams] # add zero-lag
>>> arma_process = sm.tsa.ArmaProcess(ar, ma)
>>> arma_process.isstationary
True
>>> arma_process.isinvertible
True
>>> arma_process.arroots
array([1.5-1.32287566j, 1.5+1.32287566j])
>>> y = arma_process.generate_sample(250)
>>> model = sm.tsa.ARIMA(y, (2, 0, 2), trend='n').fit(disp=0)
>>> model.params
array([ 0.79044189, -0.23140636,  0.70072904,  0.40608028])

使用from_coeffs类方法的相同ARMA(2,2)

>>> arma_process = sm.tsa.ArmaProcess.from_coeffs(arparams, maparams)
>>> arma_process.arroots
array([1.5-1.32287566j, 1.5+1.32287566j])

方法

acf([lags])

ARMA 过程的理论自相关函数。

acovf([nobs])

平稳ARMA过程的理论自协方差

arma2ar([lags])

有限滞后的自回归近似于一个ARMA过程。

arma2ma([lags])

ARMA过程的有限滞后近似MA表示。

from_coeffs([arcoefs, macoefs, nobs])

从ARMA表示创建ArmaProcess。

from_estimation(model_results[, nobs])

从ARIMA估计的结果创建一个ArmaProcess。

from_roots([maroots, arroots, nobs])

从AR和MA多项式根创建ArmaProcess。

generate_sample([nsample, scale, distrvs, ...])

从ARMA模拟数据。

impulse_response([leads])

计算ARMA过程的脉冲响应函数(MA表示)。

invertroots([retnew])

通过反转单位圆内的根使MA多项式可逆。

pacf([lags])

ARMA过程的理论偏自相关函数。

periodogram([nobs])

给定滞后多项式 ar 和 ma 的 ARMA 过程的周期图。

属性

arroots

自回归滞后多项式的根

isinvertible

Arma 过程是可逆的,如果 MA 根在单位圆之外。

isstationary

ARMA 过程是平稳的,如果 AR 根在单位圆之外。

maroots

移动平均滞后多项式的根


Last update: Oct 16, 2024