📅  最后修改于: 2023-12-03 14:45:55.999000             🧑  作者: Mango
Argsort
是Python
中常用的一种排序方法,可以返回数组或列表中元素在排序后的索引值。本文将介绍Argsort的基本用法和示例应用。
在Python
中,使用NumPy
库来进行Argsort
操作。其基本用法如下:
import numpy as np
arr = np.array([3, 1, 4, 2])
indexes = arr.argsort()
print(indexes)
上述代码通过numpy
中的argsort()
函数对列表arr
进行排序,并返回排序后每个元素的索引值,最终输出[1 3 0 2]
。
可以看到,返回的索引值列表对应的是原列表中,每个元素排序后的位置。例如,在上述代码中,数值1
排序后在第三个位置,所以对应的索引值1
排在第二个输出。
我们也可以使用argsort()
函数对列表中嵌套的列表或数组进行排序:
import numpy as np
arr = np.array([[3,2,1], [1,0,2]])
indexes = np.argsort(arr, axis=-1)
print(indexes)
上述代码输出[[2 1 0] [1 0 2]]
,其中axis=-1
表示按照对于最后一维的索引值排序。
除基本用法外,argsort()
还可以用于许多实际应用场景,例如:
argsort()
可以获得学生名次列表。下面是一个对学生成绩进行排序,并输出名次的示例代码:
import numpy as np
arr = np.array([60, 75, 80, 90, 70])
indexes = arr.argsort()[::-1]
print(f"成绩排序后的名次:{indexes+1}")
上述代码中,将argsort()
返回的索引值列表进行倒序输出,然后加上1,即可得到学生的名次列表。
Argsort
是Python
中常用的一种排序方法,可以返回数组或列表中元素在排序后的索引值。本文介绍了argsort()
的基本用法和示例应用,希望可以帮助到您。