它“起作用”是因为你的c不是你想象的那样:>>> c
[array([[[False, False, False, False, False],
[False, False, False, False, True],
[False, False, False, False, False],
[False, False, False, False, False]],
[[False, False, False, False, False],
[False, False, False, False, True],
[False, False, False, True, False],
[False, False, False, False, True]],
[[False, False, False, False, False],
[False, False, False, False, False],
[False, True, False, False, False],
[ True, False, True, True, False]]], dtype=bool)]
>>> type(c)
它不是一个数组,而是一个包含数组的列表。所以当你
^{pr2}$
您取一个元素列表的平均值,它本身就是(但是转换成float,因为这是mean和{})的作用
相反,请去掉不需要的括号:>>> c = ~b.mask
>>> output = c.mean(axis=0)
>>> output
array([[ 0. , 0. , 0. , 0. , 0.