numpy获取索引,其中值是true

发布于 2021-01-29 18:43:27

    >>> ex=np.arange(30)
    >>> e=np.reshape(ex,[3,10])
    >>> e
    array([[ 0,  1,  2,  3,  4,  5,  6,  7,  8,  9],
           [10, 11, 12, 13, 14, 15, 16, 17, 18, 19],
           [20, 21, 22, 23, 24, 25, 26, 27, 28, 29]])
    >>> e>15
    array([[False, False, False, False, False, False, False, False, False,
            False],
           [False, False, False, False, False, False,  True,  True,  True,
             True],
           [ True,  True,  True,  True,  True,  True,  True,  True,  True,
             True]], dtype=bool)

我需要找到具有true的行或e值大于15的行。我可以使用for循环进行迭代,但是,我想知道numpy是否可以更有效地做到这一点?

关注者
0
被浏览
51
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    要获取至少一项大于15的行号:

    >>> np.where(np.any(e>15, axis=1))
    (array([1, 2], dtype=int64),)
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看