ValueError:操作数无法与形状一起广播(2,3)(998,)

时间:2018-05-30 15:48:30

标签: python numpy

如何处理?我有两个数组:

a = [ 4.39159442  4.3827848   4.37397518  ......................  4.3211174]

b = [[  3.90220220e+02   4.39159442e+00  -4.00073465e-02]
    [  3.90440440e+02   4.38278480e+00  -4.00073465e-02]]

我需要分开,即a / b有人可以解释出现了什么问题吗?我使用相同的数据文件来导入它们。

1 个答案:

答案 0 :(得分:0)

看看这个例子:

import numpy as np

# I took only 12-elements so it would be easier to see
x1 = np.arange(12.0).reshape((6,2))
x2 = np.arange(6.0).reshape((6,1))

print x1
print x2
print x1 / x2

没有错误!

两个数组中必须具有相同的第一维才能使其正常工作,因此在分割之前您需要做的是a.reshape((2,998/2))

像这样:

x1 = np.arange(998.0).reshape((2,998/2))
x2 = np.arange(6.0).reshape((2,3))