二维数组中前N个值的索引

时间:2018-02-06 12:48:38

标签: python numpy

我有一个以下2维numpy数组:

[[2,3,1,5], [4,3,6,5], [7,10,8,9]]

对于轴上的每个数组= 1,我希望获得具有最高值的N个项目的索引。 示例:N = 2的响应应如下所示:

  

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

1 个答案:

答案 0 :(得分:1)

a=[[2,3,1,5], [4,3,6,5], [7,10,8,9]]


def fetchindex(array,N):
    result=[]
    for row in array:
        enumeratedrow=enumerate(row)
        sortedarray=sorted(enumeratedrow,key=lambda x:x[1],reverse=True)[:N]
        temp=[i[0] for i in sortedarray]
        result.append(temp)
    return result 

print fetchindex(a,2)

<强> RESULT

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