浅述python中argsort()函数的实例用法


Posted in Python onMarch 30, 2017

由于想使用python用训练好的caffemodel来对很多图片进行批处理分类,学习过程中,碰到了argsort函数,因此去查了相关文献,也自己在python环境下进行了测试,大概了解了其相关的用处,为了怕自己后面又忘了,就写下来权当加深理解了。(ps:我也是python小白,理解可能比较浅显)

1.先定义一个array数据

import numpy as np
x=np.array([1,4,3,-1,6,9])

2.现在我们可以看看argsort()函数的具体功能是什么:

x.argsort()

输出定义为y=array([3,0,2,1,4,5])。

我们发现argsort()函数是将x中的元素从小到大排列,提取其对应的index(索引),然后输出到y。例如:x[3]=-1最小,所以y[0]=3,x[5]=9最大,所以y[5]=5。

上面这个不难理解,不熟悉的可以去python环境下自己尝试。

3.由于在程序中遇到了类似于np.argsort()[num]的形式,一直看不明白,就自己去python环境自己试了下:

ps:这里的num的绝对值小于等于x中元素的个数

num>=0时,np.argsort()[num]就可以理解为y[num];

num<0时,np.argsort()[num]就是把数组y的元素反向输出,例如np.argsort()[-1]即输出x中最大值对应的index,np.argsort()[-2]即输出x中第二大值对应的index,依此类推。。

直观的实验才能看到效果,下面是我拿上面例子做的验证:

浅述python中argsort()函数的实例用法

这是当num为负值时的输出。

浅述python中argsort()函数的实例用法

这个是num>=0时的输出。

总结:根据上面的阐述,应该对argsort()的用法有了一个简单的了解。由于我没有去看官方解释,所以理解可能欠缺,希望诸位指正。也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中用Ctrl+C终止多线程程序的问题解决
Mar 30 Python
Python中用Descriptor实现类级属性(Property)详解
Sep 18 Python
Python作用域用法实例详解
Mar 15 Python
linux平台使用Python制作BT种子并获取BT种子信息的方法
Jan 20 Python
详解Python异常处理中的Finally else的功能
Dec 29 Python
python实战教程之自动扫雷
Jul 13 Python
python多行字符串拼接使用小括号的方法
Mar 19 Python
python3.6.3安装图文教程 TensorFlow安装配置方法
Jun 24 Python
python ipset管理 增删白名单的方法
Jan 14 Python
Python3 pip3 list 出现 DEPRECATION 警告的解决方法
Feb 16 Python
Python使用pyserial进行串口通信的实例
Jul 02 Python
ubuntu16.04升级Python3.5到Python3.7的方法步骤
Aug 20 Python
Windows下安装python2和python3多版本教程
Mar 30 #Python
详解Python之数据序列化(json、pickle、shelve)
Mar 30 #Python
python类的继承实例详解
Mar 30 #Python
django轻松使用富文本编辑器CKEditor的方法
Mar 30 #Python
python下读取公私钥做加解密实例详解
Mar 29 #Python
django开发之settings.py中变量的全局引用详解
Mar 29 #Python
深入理解Python3中的http.client模块
Mar 29 #Python
You might like
Thinkphp中数据按分类嵌套循环实现方法
2014/10/30 PHP
老生常谈文本文件和二进制文件的区别
2017/02/27 PHP
Linux服务器下PHPMailer发送邮件失败的问题解决
2017/03/04 PHP
详解PHP防止盗链防止迅雷下载的方法
2017/04/26 PHP
thinkPHP框架实现生成条形码的方法示例
2018/06/06 PHP
PHP7匿名类的用法示例
2019/04/05 PHP
Laravel Eloquent分表方法并使用模型关联的实现
2019/11/25 PHP
突发奇想的一个jquery插件
2010/11/19 Javascript
jquery中的 $(&quot;#jb51&quot;)与document.getElementById(&quot;jb51&quot;) 的区别
2011/07/26 Javascript
jQuery中的height innerHeight outerHeight区别示例介绍
2014/06/15 Javascript
原生js和jQuery随意改变div属性style的名称和值
2014/10/22 Javascript
jQuery中slice()方法用法实例
2015/01/07 Javascript
Bootstrap项目实战之子栏目资讯内容
2016/04/25 Javascript
jQuery实现Select左右复制移动内容
2016/08/05 Javascript
深入理解vue.js双向绑定的实现原理
2016/12/05 Javascript
jQuery布局组件EasyUI Layout使用方法详解
2017/02/28 Javascript
vue地区选择组件教程详解
2018/05/04 Javascript
vue项目首屏加载时间优化实战
2019/04/23 Javascript
Vue项目实现简单的权限控制管理功能
2019/07/17 Javascript
vue中的计算属性和侦听属性
2020/11/06 Javascript
原生JS实现拖拽功能
2020/12/16 Javascript
Python爬虫抓取手机APP的传输数据
2016/01/22 Python
python批量实现Word文件转换为PDF文件
2018/03/15 Python
python输出电脑上所有的串口名的方法
2019/07/02 Python
Python Django Vue 项目创建过程详解
2019/07/29 Python
pytorch模型预测结果与ndarray互转方式
2020/01/15 Python
利用CSS3实现折角效果实例源码
2016/09/28 HTML / CSS
CSS3实现伪类hover离开时平滑过渡效果示例
2017/08/10 HTML / CSS
Shopee印度尼西亚:东南亚与台湾市场最大电商平台
2018/06/17 全球购物
公司前台辞职报告
2014/01/19 职场文书
小学生家长评语大全
2014/02/10 职场文书
试用期转正员工自我评价
2014/09/18 职场文书
工作态度不端正检讨书
2014/10/04 职场文书
毕业证明书
2015/06/19 职场文书
春节随笔
2015/08/15 职场文书
Redis过期数据是否会被立马删除
2022/07/23 Redis