statsmodels.tsa.ardl.ARDL.from_formula¶
-
classmethod ARDL.from_formula(formula, data, lags=
0, order=0, trend='n', *, causal=False, seasonal=False, deterministic=None, hold_back=None, period=None, missing='none')[source]¶ 从公式构建一个ARDL模型
- Parameters:¶
- formula
str 公式与形式依赖 ~ 独立 | 固定。请参见下面的示例。
- data
DataFrame 包含公式中变量的DataFrame。
- lags{
int,list[int]} 如果是一个整数,则表示模型中包含的滞后阶数;如果是滞后阶数的列表,则表示要包含的滞后阶数索引。例如,[1, 4]将仅包含滞后阶数1和4,而lags=4将包含滞后阶数1、2、3和4。
- order{
int, sequence[int],dict} 如果为整数,则对所有外生变量使用滞后阶数 0, 1, …, order。如果为序列[整数],则对所有变量使用
order。如果为字典,则按序列应用滞后阶数。如果exog不是 DataFrame,则键为 exog 的列索引(例如,0, 1, …)。如果为 DataFrame,则键为列名。- causalbool,
optional 是否包含外生变量的滞后0项。如果为True,则仅包含滞后1, 2, …
- trend{‘n’, ‘c’, ‘t’, ‘ct’},
optional 模型中包含的趋势:
‘n’ - 无趋势。
‘c’ - 仅常量。
‘t’ - 仅时间趋势。
‘ct’ - 常数和时间趋势。
默认值为‘c’。
- seasonalbool,
optional 指示是否在模型中包含季节性虚拟变量的标志。 如果 seasonal 为 True 且 trend 包含 ‘c’,则从季节性项中排除第一个周期。
- deterministic
DeterministicProcess,optional 一个确定性过程。如果提供,趋势和季节性将被忽略。如果趋势不是“n”且季节性不是False,则会发出警告。
- hold_back{
None,int},optional 初始观测值不包含在估计样本中。如果为None,则hold_back等于模型中的最大滞后值。设置为非零值以生成具有不同滞后长度的可比较模型。例如,要比较具有lags=3和lags=1的模型的拟合度,请设置hold_back=3,以确保两个模型都使用观测值3,…,nobs进行估计。hold_back必须大于或等于模型中的最大滞后值。
- period{
None,int},optional 数据的周期。仅在 seasonal 为 True 时使用。如果使用包含已识别频率的 pandas 对象作为 endog,则可以省略此参数。
- missing{“none”, “drop”, “raise”},
optional 可用的选项是‘none’、‘drop’和‘raise’。如果选择‘none’,则不进行NaN检查。如果选择‘drop’,则会删除任何包含NaN的观测值。如果选择‘raise’,则会引发错误。默认值是‘none’。
- formula
- Returns:¶
ARDLARDL模型实例
示例
使用丹麦数据的简单ARDL模型
>>> from statsmodels.datasets.danish_data import load >>> from statsmodels.tsa.api import ARDL >>> data = load().data >>> mod = ARDL.from_formula("lrm ~ ibo", data, 2, 2)固定回归变量可以使用 | 来指定
>>> mod = ARDL.from_formula("lrm ~ ibo | ide", data, 2, 2)