如何用Pandas中的ARIMA训练模型?遇零尺寸数组错误求解决
问题解决方法
核心报错原因
你总共只有5个数据点,但代码中train = df.iloc[:-30]是取总长度减30的前半部分,5-30为负数,导致train变成了空数组,ARIMA模型无法基于空数据初始化,因此抛出ValueError。
具体解决步骤
- 调整训练集与测试集的划分逻辑,适配你的小数据量:
比如用前4个数据做训练,最后1个做测试:
或者如果不需要测试环节,直接用全部5个数据训练:train = df.iloc[:-1] test = df.iloc[-1:]train = df - 验证数据有效性:确保
train['Units']是无缺失值的数值序列,可通过以下代码检查:print(train['Units'].isnull().sum()) - 注意模型适用性:ARIMA(1,0,0)本质是一阶自回归模型,5个数据点很难得到有统计意义的结果,若后续数据量足够,再考虑使用该模型做时间序列预测。
内容的提问来源于stack exchange,提问作者Jack
相关产品推荐
相关产品推荐

