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. TTTTTTTTTTTTTT CF 645D 点的优先级

    题意:给你n个节点,m对优先级关系,a[i] b[i]代表a[i]的优先级比b[i]高,现在问你至少需要前多少对关系就能确定所有节点的优先级: #include <iostream> #i ...

  2. 工具类-ApplicationContextUtil

    package com.zhouyy.netBank.util; import org.springframework.beans.BeansException; import org.springf ...

  3. 深入理解java集合

    集合 Java集合分为三大接口:①Collection ②Map ③Iterator

  4. div随窗口变化设置高度

    window.onscroll = function () { sc(); }; window.onresize = function () { sc(); }; window.onload = fu ...

  5. C# 下载文件的心得

    下载文件最常用的有两种: 第一种:直接使用A标签,对应着文件的地址. 第二种:将文件写成流,然后在回传给客户端. 第一种,使用起来方便,但是有个坏处,如果你的文件是可编辑的文件(比如Excel wor ...

  6. cucumber+selenium

    工程结构 pom <?xml version="1.0" encoding="UTF-8"?> <project xmlns="ht ...

  7. java 中的多态

    多态是面向对象的重要特性,简单点说:“一个接口,多种实现”,就是同一种事物表现出的多种形态. 下面利用代码进行简单概述: 实现多态必须要满足三个条件 1必须有继承 2必须重写 3必须父类引用子类对象 ...

  8. AI换脸必备知识:如何查看显卡型号以及显存大小!

    使用Deepfakes(AI换脸) 软件,拼的就是配置,耗的就是时间,考验的是耐心. 配置好了,时间就少了. 所以玩这种软件,硬核需求就是:配置,配置,配置.  我的电脑能跑这个软件么?也是很多新手的 ...

  9. OpenCV学习笔记(8)——图像平滑

    使用不同的低筒滤波器对图像进行模糊 使用自定义的率弄起对图像进行卷积(2D卷积) 2D卷积 与信号一样,我们也可以对2D图像实施低通滤波,高通滤波等.LPF帮助我们去除噪声,模糊图像.而HPF帮助我们 ...

  10. 浏览器端-W3School-JavaScript:Screen 对象

    ylbtech-浏览器端-W3School-JavaScript:Screen 对象 1.返回顶部 1. Screen 对象 Screen 对象 Screen 对象包含有关客户端显示屏幕的信息. 注释 ...