我有一个以下数据框,其中列数一直到 2000 和 1000 行
索引日期 | 第 1 栏 | 第 2 栏 | 第 3 栏 |
---|---|---|---|
2021-01-02 | 3.1 | 1.2 | 8.9 |
2021-01-03 | 2.9 | 4.8 | 6.7 |
我正在尝试在所有列上运行 auto-arima 并获取预测值。这就是我到目前为止所拥有的
```
X = df.values
train, test = X[1:len(X)-12], X[len(X)-12:]
print(test)
print(train)
def find_orders(test):
stepwise_model = auto_arima(train, start_p=1, start_q=1,
test='adf', # use adftest to find optimal 'd'
max_p=3, max_q=3, # maximum p and q
m=1, # frequency of series
d=None, # let model determine 'd'
seasonal=False, # No Seasonality
start_P=1,
D=1,
trace=True,
error_action='ignore',
suppress_warnings=True,
stepwise=True) # this works
return stepwise_model.order, stepwise_model.seasonal_order
for column in test:
order, seasonal_order = find_orders(test)
fit_arimax(test, order=order, seasonal_order=seasonal_order)
```
我收到以下错误
Anaconda3\lib\site-packages\sklearn\utils\validation.py in column_or_1d(y, warn) 919 return np.ravel(y) 920 --> 921 raise ValueError( 922 "y 应该是一维数组," 923 "得到了一个形状 {} 的数组。".format(shape))
ValueError: y 应该是一个一维数组,得到一个形状为 (142, 4) 的数组。
关于我能做些什么来解决这个问题的任何想法。
提前致谢