Python np.argsort() 函数的用法

np.argsort 函数的用法

调用方法

python 复制代码
numpy.argsort(a, axis=-1, kind=None, order=None)

各个参数意义:
a:输入数组,该数组将会被排序。
axis:沿着哪个轴排序,默认轴为 -1,即最后一个轴。如果为 None,那么会使用 flatten 后的数组。
axis:可选参数,选择需要做差的轴,默认的是最后的轴。
kind:排序方法,可以选择 {'quicksort', 'mergesort', 'heapsort', 'stable'},这里不做过多介绍。
order:当 a 是一个数组时,这个值制定了

返回值:返回一个数组 a 排序的索引值。

示例1

python 复制代码
import numpy as np

x = np.array([3, 1, 2])
print(np.argsort(x))
"""
result:
[1 2 0]
"""

可以看到输出的结果对应排序后的索引值,原数组 x 经过排序后的顺序从小到大应该为 [1, 2, 3],因为原始 x 数组中元素为 [3, 1, 2],即元素 1 的索引值为 1, 元素 2 的索引值为 2, 元素 3 的索引值为 0。因此,对应的原始 x 数组中元素的索引值顺序为 [1, 2, 0]

示例2

python 复制代码
import numpy as np

x = np.array([[0, 3], [2, 2]])
print(np.argsort(x, axis=0))
"""
result:
[[0 1]
 [1 0]]
"""

axis = 0 表示沿着 y 轴排序,因此得到上述结果。不理解的小伙伴可以阅读numpy数组的坐标轴问题。

如果大家觉得有用,就点个赞让更多的人看到吧~

相关推荐
夏幻灵9 小时前
JavaScript this 面试:五种绑定规则、优先级与常见面试陷阱
开发语言·javascript·面试
程序猿编码9 小时前
榨干 RTX5090 算力!Qwen3 专用单卡推理引擎,手写C++/CUDA 算子实现 MTP 推测解码
开发语言·c++·大模型推理·qwen3·多模态推理
bkspiderx11 小时前
Qt 插件机制:动态扩展应用功能的核心框架
开发语言·qt·元数据·qt 插件·qpluginloader
程序员老陆11 小时前
深入理解 C++ thread_local:线程私有存储的正确打开方式
开发语言·c++·程序设计
沐晓时光11 小时前
C语言入门,深入理解指针(3)
c语言·开发语言
码云数智-园园11 小时前
unique_ptr 还是 shared_ptr?C++ 智能指针选型与内存泄漏实战分析
java·开发语言
禾小西12 小时前
07丨Redis 哨兵机制:主库故障后,如何恢复服务?
java·开发语言·redis
我不是阵雨12 小时前
JDK 21虚拟线程Pinning陷阱:一文拔钉解困
java·开发语言
全栈练习生12 小时前
AI Agent 沙箱
python·ai
徐小黑ACG13 小时前
Golang 基础05 结构体struct
开发语言·算法·golang