statsmodels.tsa.tsatools.lagmat¶
-
statsmodels.tsa.tsatools.lagmat(x, maxlag, trim=
'forward', original='ex', use_pandas=False)[source]¶ 创建滞后二维数组。
- Parameters:¶
- xarray_like
数据;如果是二维的,观测值在行中,变量在列中。
- maxlag
int 从零到最大滞后值的所有滞后值都包括在内。
- trim{‘forward’, ‘backward’, ‘both’, ‘none’,
None} 要使用的修剪方法。
‘forward’ : 从前端修剪无效的观测值。
‘backward’ : 修剪无效的初始观测值。
‘both’ : 两边修剪无效的观测值。
‘none’, None : 不修剪观测值。
- original{‘ex’,’sep’,’in’}
原始内容如何处理。
‘ex’ : 丢弃原始数组,仅返回滞后值。
‘in’ : 返回原始数组和滞后值作为一个单一数组。
- ‘sep’returns a tuple (original array, lagged values). The original
数组被截断以具有与返回的lagmat相同的行数。
- use_pandasbool
如果为真,当输入是 pandas Series 或 DataFrame 时,返回一个 DataFrame。如果为假,返回 numpy ndarray。
- Returns:¶
注释
当使用带有 use_pandas=True 的 pandas DataFrame 或 Series 时,trim 只能为 ‘forward’ 或 ‘both’,因为无法一致地扩展索引值。
示例
>>> from statsmodels.tsa.tsatools import lagmat >>> import numpy as np >>> X = np.arange(1,7).reshape(-1,2) >>> lagmat(X, maxlag=2, trim="forward", original='in') array([[ 1., 2., 0., 0., 0., 0.], [ 3., 4., 1., 2., 0., 0.], [ 5., 6., 3., 4., 1., 2.]])>>> lagmat(X, maxlag=2, trim="backward", original='in') array([[ 5., 6., 3., 4., 1., 2.], [ 0., 0., 5., 6., 3., 4.], [ 0., 0., 0., 0., 5., 6.]])>>> lagmat(X, maxlag=2, trim="both", original='in') array([[ 5., 6., 3., 4., 1., 2.]])>>> lagmat(X, maxlag=2, trim="none", original='in') array([[ 1., 2., 0., 0., 0., 0.], [ 3., 4., 1., 2., 0., 0.], [ 5., 6., 3., 4., 1., 2.], [ 0., 0., 5., 6., 3., 4.], [ 0., 0., 0., 0., 5., 6.]])
Last update:
Oct 16, 2024