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

posted @ 2022-04-10 23:20  灵、主  阅读(66)  评论(0编辑  收藏  举报