import numpy as np
# input 2d array
in_arr = np.array([[2,0,10],[5,4,3]])print("input array : ", in_arr)# output sorted array indices
out_arr1 = np.argsort(in_arr, kind='mergesort', axis=0)# 列print("Output sorted array indices along axis 0: ", out_arr1)
out_arr2 = np.argsort(in_arr, kind='heapsort', axis=1)# 行print("Output sorteded array indices along axis 1: ", out_arr2)
输出
input array :[[2010][543]]
Output sorted array indices along axis 0:[[001][110]]
Output sorteded array indices along axis 1:[[102][210]]
示例3
# get two largest value from numpy array
x=np.array([12,43,2,100,54,5,68])print(x)# using argsort get indices of value of arranged in ascending orderprint(np.argsort(x))#get two highest value index of arrayprint(np.argsort(x)[-2:])# to arrange in ascending order of indexprint(np.argsort(x)[-2:][::-1])# to get highest 2 values from array
x[np.argsort(x)[-2:][::-1]]