如何从 statsmodels 包中估计未观察到的组件中的系数?

How are coefficients estimated in Unobserved Components from the statsmodels package?

我正在处理一个时间序列,其中包含 2 年半的每日销售数据。该项目的目的是估计营销支出对销售的影响,同时考虑季节性和趋势。

我正计划使用 statsmodel 包中的 Unobserved Components。我的问题是外生因素的系数是与季节性、趋势和周期成分一起估计的,还是在减去季节性、趋势和周期后的残差上估计外生因素的?

所有的东西都是一起估计的,这意味着外生参数的系数不是在先分别估计其他分量之后再在残差上估计的。

有两种不同的方法来估计外生数据的系数(同样,无论哪种方法都是同时估计所有分量和系数,而不是按顺序估计):

首先,如果 mle_regression=True(这是默认值),则通过最大似然估计外生变量的系数(连同模型的其他参数,通常包括方差项趋势、季节性等),然后向量 exog.dot(coeffs) 作为模型的截距。

如果mle_regression=False,则通过卡尔曼滤波器估计系数。

在大样本中,这两种方法是等效的,即使在小样本中,它们通常也给出几乎完全相同的估计值。