我有两个numpy数组的 a 和 b ,长度分别为53和82。我想将它们合并为一个数组,因为我想使用53 + 82 = 135长度数组,比如称之为 c 进行绘图。
我试过
c = a+b
但是我得到 ValueError:形状不匹配:对象无法广播到单个形状
这可能吗?
答案 0 :(得分:4)
您需要使用numpy.concatenate而不是数组添加
c = numpy.concatenate((a, b))
<强>实施强>
import numpy as np
a = np.arange(53)
b = np.arange(82)
c = np.concatenate((a, b))
<强>输出强>
c.shape
(135, )
答案 1 :(得分:4)
In [5]: import numpy as np
In [6]: a = np.arange(5)
In [7]: b = np.arange(11)
In [8]: np.concatenate((a, b))
Out[8]: array([ 0, 1, 2, 3, 4, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
对于1-D阵列,您还可以使用numpy.hstack
:
In [9]: np.hstack((a, b))
Out[9]: array([ 0, 1, 2, 3, 4, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]