代码之家  ›  专栏  ›  技术社区  ›  ScalaBoy

如何得到向量。从使用argmax的二维numpy数组?

  •  0
  • ScalaBoy  · 技术社区  · 6 年前

    我有以下内容 numpy.ndarray :

    泰斯塔尔:

    array([[  2.55053788e-01,   6.25406146e-01,   1.19271643e-01,
              2.68359261e-04],
           [  2.59611636e-01,   0.19562805e-01,   1.20518960e-01,
              3.06535745e-01],
           [  8.52524495e-01,   5.24317825e-01,   1.22851081e-01,
              3.06610862e-04],
           [  2.55068243e-01,   6.24345124e-01,   1.20263465e-01,
              3.23178538e-04],
           [  2.46678621e-01,   6.29301071e-01,   1.23693809e-01,
              3.26490292e-04]], dtype=float32)
    

    如果我这样做 testVec = np.argmax(testArr) ,我得到一个号码。根据每行二维数组的最大值,如何获得0、1或2的向量 testArr ?

    预期输出:

    [1, 3, 0, 1, 1]
    
    2 回复  |  直到 6 年前
        1
  •  1
  •   Janna112358    6 年前

    axis

    import numpy as np
    testArr = np.array([[  2.55053788e-01,   6.25406146e-01,   1.19271643e-01,
              2.68359261e-04],
           [  2.59611636e-01,   0.19562805e-01,   1.20518960e-01,
              3.06535745e-01],
           [  8.52524495e-01,   5.24317825e-01,   1.22851081e-01,
              3.06610862e-04],
           [  2.55068243e-01,   6.24345124e-01,   1.20263465e-01,
              3.23178538e-04],
           [  2.46678621e-01,   6.29301071e-01,   1.23693809e-01,
              3.26490292e-04]], dtype=np.float32)
    np.argmax(testArr, axis=1)
    >>> array([1, 3, 0, 1, 1])
    
        2
  •  2
  •   yatu Sayali Sonawane    6 年前

    documentation axis

    np.argmax(a, axis=1)
    # array([1, 3, 0, 1, 1], dtype=int64)
    
    推荐文章