我想绘制平均24个数组,但有一条错误消息'' list'对象没有属性'''。哪里出错?
empty_array=numpy.zeros[2,30,100]
for x in range (1,25):
array = array[x,:,:,:]
empty_array += array
average = map(lambda x:x/24,empty_array)
plt.figure(1)
plt.pcolor(average)
plt.colorbar(orientation='horizontal')
答案 0 :(得分:1)
empty_array=[2,30,100]
不会创建空数组。这是一个包含三个数字的列表。您正在寻找numpy.zeros
答案 1 :(得分:1)
看起来你想计算其中一个轴的平均值。您只需使用np.mean()
即可。来自docs的示例:
>>> a = np.array([[1, 2], [3, 4]])
>>> np.mean(a)
2.5
>>> np.mean(a, axis=0)
array([ 2., 3.])
>>> np.mean(a, axis=1)
array([ 1.5, 3.5])
此处的关键是正确定义您想要平均的轴。
其他错误:
np.zeros()
将形状描述为输入,即np.zeros((2,30,100))
。average
是一个python list
。 python中的列表没有名为shape
的属性。 plt.pcolor()
expect a 2-D (numpy) array。