如何在numpy或python中使用(0,0)<=(x,y)<=(x1,y1)过滤数组(x,y,z)?

时间:2019-05-05 10:10:00

标签: python numpy

我有一个np.array像打击,形式是(x,y,z)。

[[  -1,100,1],
 [   2,2,3],
 [   4,1,1],
 [   100,100,1],
 ]           

我想用(0,0)<(x,y)<(4,4)过滤它,得到一个新数组。

[[   2,2,3],
 [   4,1,1],
 ]           

我已经过滤了一个数组,其形式为(x,y)。

aa = np.array([[  -1,100],
 [   2,2],
 [   4,1],
 [   100,100],
 ]   )
ll = np.array([0, 0]) 
ur = np.array([4, 4])

bb = np.all(np.logical_and(ll <= aa, aa <= ur), axis=1)
aa[bb]


array([[2, 2],
       [4, 1]])

但是什么时候(x,y,z)怎么办? 谢谢!

1 个答案:

答案 0 :(得分:1)

谢谢@Kasrâmvd。 使用代码。

bb = np.all(np.logical_and(ll <= aa[:,:-1], aa[:,:-1] <= ur), axis=1)

array([[2, 2, 3],
       [4, 1, 1]])