statsmodels.tsa.statespace.kalman_smoother.KalmanSmoother.set_smoother_output¶
-
KalmanSmoother.set_smoother_output(smoother_output=
None, **kwargs)[source]¶ 设置平滑输出
平滑器可以生成几种不同类型的结果。平滑器输出变量控制哪些结果被计算并返回。
- Parameters:¶
- smoother_output
int,optional 设置平滑器输出的位掩码值。详见注释。
- **kwargs
关键字参数可用于通过设置单个布尔标志来影响平滑器输出。详情请参阅注释。
- smoother_output
注释
平滑输出由一组布尔标志定义,并在内部存储为位掩码。可用的方法有:
- SMOOTHER_STATE = 0x01
计算并返回平滑后的状态。
- SMOOTHER_STATE_COV = 0x02
计算并返回平滑后的状态协方差矩阵。
- SMOOTHER_STATE_AUTOCOV = 0x10
计算并返回平滑后的状态滞后一阶自协方差矩阵。
- SMOOTHER_DISTURBANCE = 0x04
计算并返回平滑后的状态和观测干扰。
- SMOOTHER_DISTURBANCE_COV = 0x08
计算并返回平滑状态和观测干扰的协方差矩阵。
- SMOOTHER_ALL
计算并返回所有结果。
如果通过smoother_output参数直接设置位掩码,则必须提供完整的方法。
如果使用关键字参数来设置单个布尔标志,那么必须使用方法的小写形式作为参数名称,并且值是布尔标志所需的值(True 或 False)。
请注意,平滑输出也可以通过直接修改类属性来指定,这些属性与关键字参数的定义方式类似。
默认的平滑器输出是 SMOOTHER_ALL。
如果性能是一个问题,应该只指定那些需要的结果,因为任何未指定的结果都不会被计算。例如,如果平滑器输出设置为仅包括SMOOTHER_STATE,平滑器的运行速度会比需要所有输出时快得多。
示例
>>> import statsmodels.tsa.statespace.kalman_smoother as ks >>> mod = ks.KalmanSmoother(1,1) >>> mod.smoother_output 15 >>> mod.set_smoother_output(smoother_output=0) >>> mod.smoother_state = True >>> mod.smoother_output 1 >>> mod.smoother_state True
Last update:
Oct 16, 2024