我有一个 True 和 False 布尔数组 2*n。
array([[False, True],
[False, True],
[False, True],
...,
[False, True],
[False, True],
[False, True]])
Run Code Online (Sandbox Code Playgroud)
我想要的是一个新向量,如果两个值中的任何一个为 False,则它可以位于另一个具有 False 的数组中。我可以创建一个循环并检查行中的每个值,然后创建一个新向量。但我猜它很慢
boidx = np.empty(len(minindex), dtype=bool)
for idx in range(len(minindex)):
if minindex[idx,0] and minindex[idx,1]:
boidx[idx]=True
else:
boidx[idx]=False
Run Code Online (Sandbox Code Playgroud)
但这很长而且不是pythonic。该数组是 2n 或 4n。所以它应该涵盖这些选项(我的 for 循环没有)但如果需要,两个带有 if for 大小的解决方案是可行的。我也尝试使用 numpy.isin() 命令。但它适用于每个单元格。我需要每行。