我知道numpy.all()
检查数组的所有元素是否都非零(沿着指定的轴)。因此,
A = np.arange(27).reshape(3,3,3)
A
array([[[ 0, 1, 2],
[ 3, 4, 5],
[ 6, 7, 8]],
[[ 9, 10, 11],
[12, 13, 14],
[15, 16, 17]],
[[18, 19, 20],
[21, 22, 23],
[24, 25, 26]]])
A.all(axis=0)
array([[False, True, True],
[ True, True, True],
[ True, True, True]])
假设我只对数组的最后一个元素感兴趣,而不对整个轴感兴趣,例如:
B = np.array([[[ 1, 1, 2],
[ 3, 4, 5],
[ 6, 7, 8]],
[[ 9, 10, 11],
[12, 13, 14],
[15, 16, 17]],
[[18, 19, 20],
[21, 22, 23],
[0, 0, 0]]])
我该怎么做?
一种简单的方法是只使用-1
索引(像对象一样从序列末尾向后的负索引索引。)>
B = np.array([[[ 1, 1, 2], [ 3, 4, 5], [ 6, 7, 8]], [[ 9, 10, 11], [12, 13, 14], [15, 16, 17]], [[18, 19, 20], [21, 22, 23], [0, 0, 0]]]) print(B[-1, -1]) print(np.any(B[-1, -1])) print(np.all(B[-1, -1]))
送礼
[0 0 0] False False
从那里您可以使用想要确定真实性或虚假性的任何方法。