【发布时间】:2023-03-21 15:20:01
【问题描述】:
我有一个 numpy 数组,它是一个向量列表,比如
arr1 = [ [ 1, 2 ], [ 2, 2 ], [ 5, 3 ], [ 9, -1 ], [ 6, 3 ], ... ]
对应x,y值对。我想使用 x 和 y 分量的标准设置一个掩码,例如 0
[ [ True, True ], [ True, True ], [ False, False ], [ False, False ], [ False, False ], ... ]
换句话说,对于数组中的每个向量,我希望掩码对两个分量都具有相同的真值,并且仅在满足 x 和 y 的条件时才返回 True。我试过类似的东西:
masked = numpy.ma.array(arr1, mask= [0<arr1[:,0]<4 & 0<arr1[:,1]<7, 0<arr1[:,0]<4 & 0<arr1[:,1]<7])
但它告诉我“具有多个元素的数组的真值是不明确的。”有没有办法在不使用循环或 if else 的情况下简洁地做到这一点?
【问题讨论】: