我有以下数组:
[(True,False,True), (False,False,False), (False,False,True)]
如果任何元素包含 True 那么它们都应该是 true。所以上面应该变成:
[(True,True,True), (False,False,False), (True,True,True)]
我下面的代码尝试这样做,但它只是将所有元素转换为 True:
a = np.array([(True,False,True), (False,False,False), (False,True,False)], dtype='bool')
aint = a.astype('int')
print(aint)
aint[aint.sum() > 0] = (1,1,1)
print(aint.astype('bool'))
输出是:
[[1 0 1]
[0 0 0]
[0 1 0]]
[[ True True True]
[ True True True]
[ True True True]]