numpy 有多种排序方法。

sort

sort(self, axis=-1, kind='quicksort', order=None):排完序后改变原值  【只有这个方法改变原值】

axis : int, optional
Axis along which to sort. Default is -1, which means sort along the
last axis.
kind : {'quicksort', 'mergesort', 'heapsort', 'stable'}, optional
Sorting algorithm. Default is 'quicksort'.
order : str or list of str, optional
When `a` is an array with fields defined, this argument specifies
which fields to compare first, second, etc. A single field can
be specified as a string, and not all fields need be specified,
but unspecified fields will still be used, in the order in which
they come up in the dtype, to break ties.

示例

a=np.arange(1,5)
print(a) # [1 2 3 4] a.sort()
print(a) # [1 2 3 4] b=np.array([[1,5,3],[4,2,7]])
b.sort()
print(b) # [[1 3 5]
# [2 4 7]]
b=np.array([[1,5,3],[4,2,7]])
b.sort(axis=0, kind='quicksort')
print(b) # [[1 2 3]
# [4 5 7]] # b=np.array([[1,5,3],[4,2,7]])
# b.sort(axis=0,kind='quicksort',order=None)
# print(b) # 参数:
# axis=0 表示按列 1 表示按行;默认是1按行排序
# kind 排序的算法,提供了快排(quicksort)、混排、堆排

np.sort

sort(a, axis=-1, kind='quicksort', order=None):用法同 sort,但是不改变原值

c=np.array([[1,5,3],[4,2,7]])
print(np.sort(c)) # [[1 3 5]
# [2 4 7]]
print(np.sort(c,axis=0)) # [[1 2 3]
# [4 5 7]] print(c) # [[1 5 3] 原值没变
# [4 2 7]]

np.argsort

argsort(self, axis=-1, kind='quicksort', order=None):返回排序后的索引

# 一维数组
data5 = np.array([1, 5, 3])
print data5.argsort() # [0 2 1] 升序
print np.argsort(data5) # [0 2 1]
print np.argsort(-data5) # [1 2 0] 降序 # 二维数组
data6 = np.array([[1,2,3],[4,5,6],[0,0,1]])
# [[1 2 3]
# [4 5 6]
# [0 0 1]]
print np.argsort(data6, axis=1) # 按行排序
# [[0 1 2]
# [0 1 2]
# [0 1 2]]
print np.argsort(data6, axis=0) # 按列排序
# [[2 2 2]
# [0 0 0]
# [1 1 1]] a_arg = np.argsort(data6[:,1]) # 按第'1'列排序
print a_arg # [2 0 1] 第2个排1,第0个排2,第1个排3
a = data6[a_arg]
print a
# [[0 0 1]
# [1 2 3]
# [4 5 6]]

numpy-排序的更多相关文章

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

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

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

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

  3. NumPy 排序、查找、计数

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

  4. numpy排序(sort、argsort、lexsort、partition、sorted)

    1.sort numpy.sort(a, axis=1, kind='quicksort', order=None) a :所需排序的数组 axis:数组排序时的基准,axis=0按行排列:axis= ...

  5. Numpy 排序和使用索引

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

  6. 15、numpy——排序、条件刷选函数

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

  7. NumPy排序

    numpy.sort()函数 该函数提供了多种排序功能,支持归并排序,堆排序,快速排序等多种排序算法 使用numpy.sort()方法的格式为: numpy.sort(a,axis,kind,orde ...

  8. 吴裕雄--天生自然Numpy库学习笔记:NumPy 排序、条件刷选函数

    numpy.sort() 函数返回输入数组的排序副本.函数格式如下: numpy.sort(a, axis, kind, order) 参数说明: a: 要排序的数组 axis: 沿着它排序数组的轴, ...

  9. Python 排序和numpy排序,得到排序后索引序列(及源list的序列)

    Python list 排序 & np list 排序 nums = [1.25, 0.98, 6.13, 7.62] li = np.array(nums) print(li) out = ...

  10. numpy 排序, 查询功能

    https://docs.scipy.org/doc/numpy/reference/routines.sort.html  

随机推荐

  1. Color a Tree

    题目链接:Click here Solution: 看起来不太能dp,则考虑树上贪心 题目要求一个点必须先染父亲才能染自己,就给了我们启示,贪心的合并点 我们定义一个点的权重为这个点的价值和/点数,然 ...

  2. Gene co-expression analysis for functional classification and gene–disease predictions

  3. 【转】diamond专题(四)—— 容灾机制

    特别提示:本人博客部分有参考网络其他博客,但均是本人亲手编写过并验证通过.如发现博客有错误,请及时提出以免误导其他人,谢谢!欢迎转载,但记得标明文章出处:http://www.cnblogs.com/ ...

  4. 10、kubernetes之RBAC认证

    一.kubectl proxy # kubectl proxy --port=8080 # curl http://localhost:8080/api/v1/ # curl http://local ...

  5. java高级面试题汇总(复习)从最基础的往上复习,每天定期更新。

    每天搬一点砖,总有一天成为大牛! 看问题的时候请不要立马去翻答案,多想想. 看完答案可以问问为什么,尝试拓展!一起加油吧! 每个答案后面都有一个小彩蛋(一个以上的拓展问题),钻研让你先人一步. jav ...

  6. Redis的高可用详解:Redis哨兵、复制、集群的设计原理,以及区别

    谈到Redis服务器的高可用,如何保证备份的机器是原始服务器的完整备份呢?这时候就需要哨兵和复制. 哨兵(Sentinel):可以管理多个Redis服务器,它提供了监控,提醒以及自动的故障转移的功能. ...

  7. vue实现百度下拉框

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...

  8. 全面解读php-网络协议

    一.OSI七层模型 1.物理层 作用:建立,维护,断开物理连接 2.数据链路层 作用:建立逻辑连接,进行硬件地址寻址,差错校验等功能. 3.网络层 作用:进行逻辑地址寻址,实现不同网络之间的路径选择. ...

  9. Javadoc常见的标记和含义

    1.@param 方法参数的说明 2.@return 对 方法返回值的说明 3.@throws 方法抛出异常的描述 4.@version模块的版本号 5.see参数转向 6.@deprecated标记 ...

  10. ControlTemplate in WPF —— Button

    <ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" x ...