在Python中对3d numpy数组和预测数组应用自动回归

在Python中对3d numpy数组和预测数组应用自动回归,python,arrays,numpy,multidimensional-array,autoregressive-models,Python,Arrays,Numpy,Multidimensional Array,Autoregressive Models,我有一个3d Numpy阵列,观察时间超过3个点: a=np.array(时间,x,y) 我的目标是对3个时间点的观测值进行自回归,并预测包含未来值的数组 我尝试在行和列上使用for循环来执行此操作,但我的自动回归只考虑了过去的3个值(每个维度一个),这导致了错误: ValueError:maxlag应该是

我有一个3d Numpy阵列,观察时间超过3个点:

a=np.array(时间,x,y)

我的目标是对3个时间点的观测值进行自回归,并预测包含未来值的数组

我尝试在行和列上使用for循环来执行此操作,但我的自动回归只考虑了过去的3个值(每个维度一个),这导致了错误:

ValueError:maxlag应该是

我如何不仅使用特定的x和y,而且使用所有条目(假设趋势相同)在三维上应用自回归? 另外,是否有一种更快的循环方式,因为最终的np.array会更大

谢谢大家!

这是我写的代码:

a = np.array([[[ 5,  8,  6,  5],
              [ 8,  2,  3,  3],
              [ 0,  4,  7,  1],
              [ 9,  9,  6,  1]],

             [[ 2,  0, 10,  9],
              [ 3,  6,  8,  7],
              [ 1,  4,  2,  9],
              [ 2,  4,  9,  2]],

             [[ 6,  9,  9,  1],
              [ 8,  7,  6,  1],
              [ 5,  3,  2,  2],
              [ 7,  7,  2,  5]]])


# Loop over each index in the array
for row in range(a.shape[0] ) :
    for col in range(a.shape[1] ) :
        data = (a[0,row,col], a[1,row,col], a[2,row,col])

        # fit model
        model = AR(data)
        model_fit = model.fit()

        # make prediction
        yhat = model_fit.predict(len(data), len(data))

        print(yhat)