numpy.argsort()函数
点击查看代码
# argsort() 对数组升序排列,但输出的是原数组下标,不是排序好的数组
# argsort()[num]
# 当num >= 0时,argsort()[num]的值即为y[num]的值
# 当num < 0时,argsort()[num]的值为y数组反向输出的第num个数
import numpy as np
x1 = np.array([-1, 0, 1, 4, 5])
x2 = np.array([0, -1, 5, 1, 4])
y1 = x1.argsort()
y2 = x2.argsort()
print(y1) # [0 1 2 3 4]
print(y2) # [1 0 3 4 2]
print(y1[1]) # 1
print(x1.argsort()[1]) # 1
print(y1[-1]) # 4
print(x1.argsort()[-5]) # 0
print(y2[1]) # 0