statsmodels.tsa.statespace.kalman_smoother.KalmanSmoother¶
-
class statsmodels.tsa.statespace.kalman_smoother.KalmanSmoother(k_endog, k_states, k_posdef=
None, results_class=None, kalman_smoother_classes=None, **kwargs)[source]¶ 时间序列过程的状态空间表示,带有卡尔曼滤波器和平滑器。
- Parameters:¶
- k_endog{array_like,
int} 观察到的时间序列过程 \(y\) 如果是数组形式,或者是过程中的变量数量,如果是整数。
- k_states
int 未观测状态过程的维度。
- k_posdef
int,optional 描述测量方程中冲击的保证正定协方差矩阵的维度。必须小于或等于k_states。默认是k_states。
- results_class
class,optional 默认的结果类,用于保存过滤输出。默认是SmootherResults。如果指定,类必须继承自SmootherResults。
- **kwargs
关键字参数可用于为状态空间矩阵、卡尔曼滤波选项或卡尔曼平滑选项提供默认值。更多详情请参见表示。
- k_endog{array_like,
- Attributes:¶
- design
dtype(dtype) 当前活动表示矩阵的数据类型
- endog
memory_no_filtered(bool) 标志,用于防止存储过滤后的状态和协方差矩阵。
memory_no_forecast(bool) 标志,用于防止存储所有与预测相关的输出。
memory_no_predicted(bool) 标志,用于防止存储预测的状态和协方差矩阵。
obs(数组) 观测向量: \(y~(k\_endog \times nobs)\)
- obs_cov
- obs_intercept
prefix(str) 当前活动表示矩阵的BLAS前缀
- selection
- state_cov
- state_intercept
time_invariant(bool) 当前活跃的表示矩阵是否
- transition
方法
bind(endog)将数据绑定到状态空间表示
clone(endog, **kwargs)克隆一个状态空间表示,同时覆盖一些元素
diff_endog(new_endog[, tolerance])extend(endog[, start, end])扩展当前的状态空间模型,或特定的(时间)子集
filter([filter_method, inversion_method, ...])将卡尔曼滤波器应用于状态空间模型。
fixed_scale(scale)当设置 FILTER_CONCENTRATED 时,用于固定比例的上下文管理器
impulse_responses([steps, impulse, ...])脉冲响应函数
initialize(initialization[, ...])如有必要,创建一个初始化对象
initialize_approximate_diffuse([variance])使用近似扩散值初始化状态空间模型。
initialize_components([a, Pstar, Pinf, A, ...])使用组件矩阵初始化状态空间模型
将状态空间模型初始化为扩散状态。
initialize_known(constant, stationary_cov)使用已知的初始状态分布初始化状态空间模型。
将状态空间模型初始化为平稳状态。
loglike(**kwargs)计算与状态空间模型相关的对数似然。
loglikeobs(**kwargs)计算与状态空间模型相关的每个观测值的对数似然。
set_conserve_memory([conserve_memory])设置内存保护方法
set_filter_method([filter_method])设置过滤方法
set_filter_timing([alternate_timing])设置过滤时机约定
set_inversion_method([inversion_method])设置反演方法
set_smooth_method([smooth_method])设置平滑方法
set_smoother_output([smoother_output])设置平滑输出
set_stability_method([stability_method])设置数值稳定性方法
simulate(nsimulations[, measurement_shocks, ...])模拟一个遵循状态空间模型的新时间序列
smooth([smoother_output, smooth_method, ...])将卡尔曼平滑器应用于状态空间模型。
属性
(整数) 内存保护位掩码。
(数组) 设计矩阵: \(Z~(k\_endog \times k\_states \times nobs)\)
(dtype) 当前活动表示矩阵的数据类型
(数组) 观测向量,obs 的别名。
(bool) 增强卡尔曼滤波的标志。
(bool) 用于使用 Chandrasekhar 递归进行过滤的标志。
(bool) 用于卡尔曼滤波的标志,使用折叠的观测向量。
(bool) 用于集中对数似然卡尔曼滤波的标志。
(bool) 传统卡尔曼滤波的标志。
(bool) 精确初始卡尔曼滤波的标志。
(bool) 扩展卡尔曼滤波的标志。
(整数) 过滤方法位掩码。
(bool) 用于平方根卡尔曼滤波的标志。
(整数) 过滤时机。
(bool) 用于多元观测向量的单变量过滤标志。
(bool) 无迹卡尔曼滤波的标志。
(整数) 反转方法位掩码。
(bool) 用于Cholesky求逆方法的标志。
(bool) LU 分解方法的标志。
(bool) 单变量反演方法的标志(推荐)。
(bool) 标志以节省最大内存。
(bool) 标志,用于防止存储过滤后的状态和协方差矩阵。
(bool) 标志,用于防止存储过滤后的状态协方差矩阵。
(bool) 防止存储过滤状态的标志。
(bool) 标志,用于防止存储所有与预测相关的输出。
(bool) 标志以防止存储预测误差协方差矩阵。
(bool) 标志,用于防止存储预测和预测误差。
(bool) 标志以防止存储卡尔曼增益矩阵。
(bool) 标志,用于防止为每个观测值存储似然值。
(bool) 标志,用于防止存储预测的状态和协方差矩阵。
(bool) 标志,用于防止存储预测状态协方差矩阵。
(bool) 标志,用于防止存储预测状态。
(bool) 标志,用于防止为每个观测值存储似然值。
(bool) 标志,用于防止存储标准化预测误差。
(bool) 标志,用于在内存中存储所有中间结果(默认)。
(数组) 观测向量: \(y~(k\_endog \times nobs)\)
(数组) 观测协方差矩阵: \(H~(k\_endog \times k\_endog \times nobs)\)
(数组) 观测截距: \(d~(k\_endog \times nobs)\)
(str) 当前活动表示矩阵的BLAS前缀
(数组) 选择矩阵: \(R~(k\_states \times k\_posdef \times nobs)\)
(bool) 用于替代(修改后的Bryson-Frazier)平滑的标志。
(bool) 经典平滑标志(参见例如 Anderson 和 Moore, 1979)。
(bool) 传统(Durbin 和 Koopman, 2012)卡尔曼平滑标志。
(bool) 单变量平滑标志(使用修改后的Bryson-Frazier时序)。
(bool) 用于Cholesky和线性求解器逆方法的标志(推荐)。
(bool) 用于LU分解和线性求解器求逆方法的标志。
(bool) 强制协方差矩阵对称的标志
(整数) 稳定性方法位掩码。
(数组) 状态协方差矩阵: \(Q~(k\_posdef \times k\_posdef \times nobs)\)
(数组) 状态截距: \(c~(k\_states \times nobs)\)
(bool) 当前活跃的表示矩阵是否是时间不变的
(bool) 用于替代时间约定标志(Kim 和 Nelson,2012)。
(bool) 默认时间约定标志(Durbin 和 Koopman,2012)。
(数组) 转移矩阵: \(T~(k\_states \times k\_states \times nobs)\)