基于行条件的Numpy Slice Array列

时间:2017-11-19 22:03:28

标签: python numpy

给定2xn数组如何在第一行给定条件的情况下将列切片为新数组?

x = np.array([[1,2,3],[10,20,30]])

In:
Out[20]: 
array([[ 1,  2,  3],
       [10, 20, 30]])

假设我想要第0​​行的所有列< = 2。

In:  x[x[:]<=2]
Out: array([1, 2])

这并没有得到10和20以及1和2.我期待

array([[ 1,  2],
       [10, 20]])

放入x []以获取切片的正确条件是什么?

1 个答案:

答案 0 :(得分:0)

您可以使用以下方法对第二轴进行布尔切片:

x[:,x[0]<=2]
# returns:
array([[ 1,  2],
       [10, 20]])