代码之家  ›  专栏  ›  技术社区  ›  hans glick

将numpy数组与另一个数组的每个元素进行比较

  •  0
  • hans glick  · 技术社区  · 6 年前
    A = np.array([5,1,5,8])
    B = np.array([2,5])
    

    A>2
    A>5
    (array([ True, False,  True,  True]), array([False, False, False,  True]))
    
    1 回复  |  直到 6 年前
        1
  •  2
  •   andrew_reece    6 年前

    不是特别花哨,但清单理解会起作用:

    [A > b for b in B]
    
    [array([ True, False,  True,  True], dtype=bool),
     array([False, False, False,  True], dtype=bool)]
    

    你也可以使用 np.greater()

    np.greater(A, B[:,np.newaxis])
    
    array([[ True, False,  True,  True],
           [False, False, False,  True]], dtype=bool)