1.sort

numpy.sort(a, axis=1, kind='quicksort', order=None)

  • a :所需排序的数组
  • axis:数组排序时的基准,axis=0按行排列;axis=1按列排列
  • kind:数组排序时使用的方法,其中:
  • kind=′quicksort′为快排;kind=′mergesort′为混排;kind=′heapsort′为堆排;
  • order:一个字符串或列表,可以设置按照某个属性进行排序

2.argsort

numpy.argsort(a, axis=1, kind='quicksort', order=None)

  • a :所需排序的数组
  • axis:数组排序时的基准,axis=0按行排列;axis=1按列排列
  • kind:数组排序时使用的方法,其中:
  • kind=′quicksort′为快排;kind=′mergesort′为混排;kind=′heapsort′为堆排;
  • order:一个字符串或列表,可以设置按照某个属性进行排序

3.lexsort 排字典序函数

numpy.argsort(a, axis=-1, kind='quicksort', order=None)

b在前,a在后,即是先按照a的元素进行比较
如a中的最小值为两个1,其索引分别为0,2,再计较b中相应索引上的值,即9,0
对应的最小应是:1,0,而其对应的索引为2,所以排序后返回的结果第一个值为索引2
下一个最小应是:1,9,而其对应的索引为0,所以排序后返回的结果第一个值为索引0
以此类推...

下例lexsort以最后一行开始,首先对a进行排序,可以发现a中有几个元素是相同的,有着相同元素的按照索引小的在前,
因此a排序后的索引数组为[ 0, 2, 4, 3, 5, 6, 1 ]。然后我们对b进行排序,排序结果为[ 2, 4, 6, 5, 3, 1, 0 ],
最后的排序结果为[ 2, 0, 4, 6, 5, 3, 1 ],我们知道a中索引0和2数值相等,但是在b中索引为2的元素比索引为0的元素小,
所以最终的比较结果为第二列比第0列小,其他列同理。其实上面相当于是对 19,54,10,44,30,42,41进行排序,
带下划线的元素是主关键字,主关键字来自a(最后一行),当主关键字比较不出结果,则参考次关键字(b对应行)的比较结果得出最后的排序结果
另外对有序数组中,我们可以用searchsorted找到某个元素合适的位置。这里不一定会找到查找成功,
但是如果待查找元素存在则一定在那个的位置上。因此searchsorted方法可以轻松找到某一个区间的临界点的索引。
(注意如果元素存在且不止一个,则默认返回最左边的索引)

4.numpy.searchsorted

  • numpy.searchsorted(a, v, side='left', sorter=None)
  • a:所需排序的数组
  • v:待查询索引的元素值
  • side:查询索引时的方向,其中:kind=′left′为从左至右;kind=′right′为从右至左
  • sorder:一个字符串或列表,可以设置按照某个属性进行排序

5.numpy.partition(与此对应的还有argpartition)

6.sorted()

numpy排序(sort、argsort、lexsort、partition、sorted)的更多相关文章

  1. python 排序 sort和sorted

    当我们从数据库中获取一写数据后,一般对于列表的排序是经常会遇到的问题,今天总结一下python对于列表list排序的常用方法: 第一种:内建方法sort() 可以直接对列表进行排序 用法: list. ...

  2. Python 排序---sort与sorted学习

    当我们从数据库中获取一写数据后,一般对于列表的排序是经常会遇到的问题,今天总结一下python对于列表list排序的常用方法: 第一种:内建方法sort() 可以直接对列表进行排序 用法: list. ...

  3. python之排序(sort/sorted)

    大家都知道,python排序有内置的排序函数 sort() 和 高阶函数sorted() .但是它们有什么区别呢? 让我们先从这个函数的定义说起: sorted():该函数第一个参数iterable为 ...

  4. NumPy 排序、条件刷选函数

    NumPy 排序.条件刷选函数 NumPy 提供了多种排序的方法. 这些排序函数实现不同的排序算法,每个排序算法的特征在于执行速度,最坏情况性能,所需的工作空间和算法的稳定性. 下表显示了三种排序算法 ...

  5. NumPy排序、搜索和计数函数

    NumPy - 排序.搜索和计数函数 NumPy中提供了各种排序相关功能. 这些排序函数实现不同的排序算法,每个排序算法的特征在于执行速度,最坏情况性能,所需的工作空间和算法的稳定性. 下表显示了三种 ...

  6. Numpy 排序和使用索引

    # 导包 import numpy as np 排序 .sort() x = np.arange(16) # array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, ...

  7. NumPy 排序、查找、计数

    章节 Numpy 介绍 Numpy 安装 NumPy ndarray NumPy 数据类型 NumPy 数组创建 NumPy 基于已有数据创建数组 NumPy 基于数值区间创建数组 NumPy 数组切 ...

  8. 转:详细解说 STL 排序(Sort)

    详细解说 STL 排序(Sort) 详细解说 STL 排序(Sort) 作者Winter 详细解说 STL 排序(Sort) 0 前言: STL,为什么你必须掌握 1 STL提供的Sort 算法 1. ...

  9. 详细解说 STL 排序(Sort)(转)

    作者Winter 详细解说 STL 排序(Sort) 0 前言: STL,为什么你必须掌握 1 STL提供的Sort 算法 1.1 所有sort算法介绍 1.2 sort 中的比较函数 1.3 sor ...

随机推荐

  1. 一、K3 Cloud 开发插件《K3 Cloud开发手册》

    1.K3 Cloud打开 提示错误:未能加载文件或程序集“XXXXXXXXX”或它的某一个依赖项 原因:未正常关机导致的Temporary ASP.NET Files文件夹下的文件损坏 解决:删除C: ...

  2. 【前端积累】Awesome初识

    前言 之所以要看这个,是因为在看到的一个网站里图表显示的全屏和缩小,anyway ,还是看一下咯~ 一.介绍 Font Awesome 字体为您提供可缩放矢量图标,它可以被定制大小.颜色.阴影以及任何 ...

  3. Nginx反向代理腾讯云COS的一个坑

    版权声明:本文由黄希彤   原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/668639001484812620 来源:腾云 ...

  4. sencha touch NavigationView

    NavigationView 是官方根据Container控件扩展而来的,由一个导航栏和一个card组成,具备导航和返回时自动销毁当前界面的功能,非常适合新手使用. 其中导航栏的代码如下: Ext.d ...

  5. Android MediaScanner

    一.MediaScanner 的使用 1)Intent.ACTION_MEDIA_SCANNER_SCAN_FILE:扫描指定文件 public void scanFileAsync(Context ...

  6. CONE NAT 和 Symmetric NAT

    CONE NAT 和 Symmetric NAT 1. NAT 的划分 RFC3489 中将 NAT 的实现分为四大类: Full Cone NAT 完全锥形 NAT Restricted Cone ...

  7. CentOS7下Elastic Stack 5.0日志分析系统搭建

    原文链接:http://www.2cto.com/net/201612/572296_3.html 在http://localhost:5601下新建索引页面输入“metricbeat-*”,之后ki ...

  8. MVC @RenderBody、@RenderSection、@RenderPage、@Html.RenderPartial、@Html.RenderAction

    1.@RenderBody() 作用和母版页中的服务器控件类似,当创建基于此布局页面的视图时,视图的内容会和布局页面合并,而新创建视图的内容会通过布局页面的@RenderBody()方法呈现在标签之间 ...

  9. Unity3D笔记 愤怒的小鸟<六> 弹弓发射小鸟

    要实现的目标 实现个性化的鼠标 实现弹弓 选择小鸟.拉升弹弓.发射小鸟 弹弓橡皮筋 声音 1.实现个性化鼠标 效果 2.添加弹弓 建立两个材质 创建一个空GameObject 把两个shoot拖进来统 ...

  10. Adobe edge animate制作HTML5动画可视化工具(一)

    Edge Animate for mac是Adobe最新出品的制作HTML5动画的可视化工具,简单的可以理解为HTML5版本的Flash Pro.在之后的文章中,我会逐一的介绍这款新的HTML5动画神 ...