twi*_*twi 5 python arrays matplotlib valueerror
我正在尝试合并这样的数组:
如果:
a = [1.2, 1, 3, 4]
b = [0.0 , 0.0]
c = [0.0 , 0.0]
a = a + b + c
Run Code Online (Sandbox Code Playgroud)
那么结果应该是:
[0.0 , 0.0 , 1.2 , 1 ,3 ,4 , 0.0 ,0.0]
Run Code Online (Sandbox Code Playgroud)
我所做的是提取数组的直方图并将其与普通数组合并。
x1, bins, patch = plt.hist(array1, bins = round(max(array1) - min(array1)))
x1 = b + x1 + c
but the form of x1 is
x1 = [ 2. 0. 0. 1. 0. 2. 5. 0. 1. 1. 0. 1. 5.]
Run Code Online (Sandbox Code Playgroud)
也许这会导致这样的错误
ValueError:操作数无法与形状一起广播 (5,) (30,)
请帮我。我不知道该怎么办
您可以使用 np.concatenate 来做到这一点,但您也可以通过将数组转换为列表来做到这一点。
import numpy as np
a = list(np.array([1.2, 1, 3, 4]))
b = list(np.array([0.0 , 0.0]))
c = list(np.array([0.0 , 0.0]))
D= a + b + c
Run Code Online (Sandbox Code Playgroud)
所以在你的代码中尝试:
x1 = list(b) + list(x1) + list(c)
#Put it back into a numpy array
x1 = np.array(x1)
Run Code Online (Sandbox Code Playgroud)