四维阵列中的快速线性回归

2024-04-25 17:24:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个四维数组[6,89,384,384],对应于[v,z,y,x]。我现在希望在每个[z,y,x]执行v的线性回归,即linear-reg([:,z,y,x]),并将斜率保存到一个新数组中。最快的方法是什么?你知道吗

我试过scipy.stats.linregressnp.polyfit。这两个过程都需要大约3分钟才能完成。 下面是我当前的实现。你知道吗

x_linfit = np.linspace(0,10,6)
for z in range(z_dim):
    for y in range(y_dim):
        for x in range(x_dim):
            data = data_frames[:,z,y,x]
            tmp_linfit = np.polyfit(x_linfit,data, deg=1)
            data_fit[z,x,y] = tmp_linfit[0]

这能不能用更聪明的方法呢?你知道吗


Tags: 方法infordatanprange线性数组