Numpy中的argsort函数详解

前几天在别人的代码中看到了argsort这个函数,当时不太明白这个函数到底是做什么的。然后就在网络搜了一下,打开几篇博客,都是转载的,要不就是翻译官方文档,看了几篇愣是没看明白。费了好大劲,搞清楚这个函数的意思了。所以特地写篇博客,希望能够讲清楚这个函数的用处。

首先我们构造一个numpy数组

import numpy as np
a = np.array([10, 2, 7])

我们对数组a按照升序进行排列

b = sorted(a)

排序后得到的数组b是[2, 7, 10]

我们在根据数组b构造一个数组

2在数组a中的索引是1,7在数组a中的索引是2,10在数组a中的索引是0,我们用这些索引按照这个顺序再构造一个数组c,那么c是 [1, 2, 0]。

这个索引数组其实就是argsort的返回值

a = np.array([10,2,7])
a.argsort()
array([1, 2, 0])

综上,也就是说,a.argsort()返回的数组是a经过排序(升序)后的其元素在原数组的索引。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值