如何在库pmdarima中将外生变量与pipeline.fit()结合使用?

时间:2019-05-03 15:26:41

标签: python-3.x time-series forecast pyramid-arima

我目前正在使用pmdarima.pipeline.Pipeline.fit(y,exogenous = None,** fit_kwargs)用pmdarima库建立ARIMAX模型

参数说明:

exogenous:类似数组,shape = [n_obs,n_vars],可选(默认=无)

An optional 2-d array of exogenous variables. If provided, these variables are used as additional features in the regression operation. This should not include a constant or trend. Note that if an ARIMA is fit on exogenous features, it must be provided exogenous features for making predictions.

但是我不明白这种格式的含义:shape = [n_obs,n_vars]。

n_obs和n_vars是什么意思?

为什么我们需要这种格式,而不需要时间序列格式的外生变量?

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

泰勒·史密斯先生给我发了电子邮件。

希望它可以在将来帮助其他人

我确定您知道,

外生变量或协变量在大多数ML算法中均以二维矩阵形式表示。沿着行轴是观测值,沿着列轴是变量或特征向量(因此n_samples x n_features)。您要查询的约定是Numpy和scikit-learn用于表示类似数组的对象的形状的约定(例如,参见scikit-learn的Lasso文档)。 “ shape = [n_obs,n_vars]”仅表示二维矩阵,其行和行均带有样本。

关于您为什么不能使用时间序列的问题...您的y变量应该是时间序列(实际上只是一个向量或一维数组),因为这就是您将从中预测的结果。那是唯一需要的数据。外生变量纯粹是可选的补充数据。