List

1、一维数组

2、二维数组

无论是一维数组还是二维数组都能通过 list 自带的 sort() 函数进行更新,或者直接调用sorted()方法即可。

import numpy as np

a = [3,4,5,1,2,3]

b = [[3,4,5],[2,3,4]]

c = [[3,4,5],[3,3,4]]

a.sort()

b.sort()

c.sort()

print(a) #直接调用sorted()方法,print(sorted(a))

print(b)

print(c)

Array

1、一维数组

1)argsort()

对一维数组进行排序可使用数组自带的a.argsort(),或者使用np.argsort(a)

>>>np.argsort(a) #按升序排列

>>> np.argsort(-a) #按降序排列

另一种降序排列的方法:                                                                                                                                                                    >>> a =

x[np.argsort(x)]

>>> a[::-1]

a = np.array([3,4,5,1,2,3])

print(a.argsort())     # 同np.argsort(a)

得到数组的排序索引

根据索引,我们采用 a[a.argsort()]即可得到

>>>a[np.argsort(x)] #通过索引值排序后的数组

>>>a[np.argsort(-x)]

a = np.array([3,4,5,1,2,3])

print(a[a.argsort()])

2二维数组

1)argsort()

>>> x = np.array([[0, 3], [2, 2]])

>>> x

array([[0, 3],

[2, 2]])

>>> np.argsort(x, axis=0) #按列排序

array([[0, 1],

[1, 0]])

>>> np.argsort(x, axis=1) #按行排序

array([[0, 1],

[0, 1]])

2)lexsort()

lexsort支持对数组按指定行或列的顺序排序;是间接排序,lexsort不修改原数组,返回索引。

(对应lexsort 一维数组的是argsort a.argsort()这么使用就可以;argsort也不修改原数组, 返回索引)

>>> a

array([[ 2,  7,  4,  2],

[35,  9,  1,  5],

[22, 12,  3,  2]])

按最后一列顺序排序

>>> a[np.lexsort(a.T)]

array([[22, 12,  3,  2],

[ 2,  7,  4,  2],

[35,  9,  1,  5]])

按最后一列逆序排序

>>>a[np.lexsort(-a.T)]

array([[35,  9,  1,  5],

[ 2,  7,  4,  2],

[22, 12,  3,  2]])

按第一列顺序排序

>>> a[np.lexsort(a.T)]

array([[22, 12,  3,  2],

[ 2,  7,  4,  2],

[35,  9,  1,  5]])

按最后一行顺序排序

>>> a.T[np.lexsort(a)].T

array([[ 2,  4,  7,  2],

[ 5,  1,  9, 35],

[ 2,  3, 12, 22]])

按第一行顺序排序

>>> a.T[np.lexsort(a[::-1,:])].T

array([[ 2,  2,  4,  7],

[ 5, 35,  1,  9],

[ 2, 22,  3, 12]])

参考:https://blog..net/qq_20135597/article/details/84204903

python二维数组矩形倒置排序_python二维数组按某行某列顺序、逆序排序相关推荐

  1. python二维数组按照第一列排序_Python中二维数组按照某行或列排序的实现方法

    这篇文章主要介绍了Python实现二维数组按照某行或列排序的方法,结合具体实例形式分析了Python使用numpy模块的lexsort方法针对二维数组进行排序的常用操作技巧,需要的朋友可以参考下 本文 ...

  2. 如何利用一维数组实现二维数组的多列自由升降序排序过程详解

    如何利用一维数组实现二维数组的多列自由升降序排序过程详解 本例只说明多列排序的实现方式,一维数组的排序已经有过讲解不在赘述.所以本文是在已经完成了一维数组排序的函数封装的基础上完善多列排序的过程的详解 ...

  3. Java实验——定义一个类,该类中包含以下几个方法(静态):实现两个字符串数组的逆序排序,输出结果为字符串数组;求两个整形数组的交集;求两个浮点型数组的并集;

    目录 一.实现两个字符串数组的逆序排序,输出结果为字符串数组 解题思路: 具体代码: 运行截图: 二.求两个整形数组的交集 具体代码: 运行截图: 三.求两个浮点型数组的并集 解题思路: 具体代码: ...

  4. Python编程语言学习:将多个列表数据保存为dataframe格式数据并按照指定列进行降序排序之详细攻略

    Python编程语言学习:将多个列表数据保存为dataframe格式数据并按照指定列进行降序排序之详细攻略 目录 将多个列表数据保存为dataframe格式数据并按照指定列进行降序排序之详细攻略 输出 ...

  5. Java 正序、逆序排序

    Java 如何正序.逆序排序? 这里的知识点包括: Collections.sort() 方法提供集合类正序排序. Collections,reverse() 方法可以将排序好的集合类进行逆序. 如果 ...

  6. R语言使用dplyr包的arrange函数进行dataframe排序、arrange函数基于一个字段(变量)进行降序排序实战

    R语言使用dplyr包的arrange函数进行dataframe排序.arrange函数基于一个字段(变量)进行降序排序实战 目录

  7. python计算两个矩形的重叠_python计算两个矩形框重合百分比的实例

    python计算两个矩形框重合百分比的实例 如下所示: def mat_inter(box1,box2): # 判断两个矩形是否相交 # box=(xA,yA,xB,yB) x01, y01, x02 ...

  8. python逆序排序_python排序倒序

    Python编程中常用的12种基础知识 Python编程中常用的12种基础知识,其中肯定有你不会的! 1.正则表达式替换 目标: 将字符串line中的 overview.gif 替换成其他字符串 2. ...

  9. python 3 字典排序_Python学习教程实用技法:通过公共键对字典列表排序—itemgetter...

    Python学习教程实用技法:通过公共键对字典列表排序-itemgetter 前言:我们有一个字典列表,想根据一个或多个字典中的值对列表进行排序. 利用operator模块中的itemgetter函数 ...

最新文章

  1. HDU 2206 IP的计算(字符串处理)
  2. 研究项目: JBoss架构分析
  3. jvm性能调优实战 -33每日百亿数据量的实时分析引擎,如何定位和解决频繁Full GC问题
  4. python 统计组合用什么库_Python数据科学,用这些库就够了
  5. 修改 ASP.NET 请求队列的限制
  6. oracle中的 where 1=1 和where 11
  7. 长沙理工大学计算机网络试题,长沙理工大学考试试卷(计算机网络)要点.docx
  8. UIScrollView 滚动视图 (实例)
  9. 专注于元宇宙后 Meta今年将取消举办F8开发者大会
  10. 京东数科科创板IPO获受理,刘强东为实际控制人
  11. JavaScript入门学习书籍的阶段选择
  12. 基于asp.net基层部队后勤管理系统的设计与实现
  13. 2017版张宇1000题【题目收集】
  14. 【有利可图网】PS实战教程55:打破次元壁,将照片从三次元跨越到二次元
  15. xss.haozi.me练习通关
  16. 腾讯走上王者之位,你以为靠的只是抄袭?
  17. 社交产品盈利方式产品模式设计案例
  18. 程序员如何缓解自己内心的焦虑与烦躁
  19. 关于PE4259等各类射频开关选型对比分析
  20. Python+pymupdf处理PDF文档案例6则

热门文章

  1. vue 动态改变主题颜色
  2. 视觉神经网络芯片是什么,视觉神经网络芯片设计
  3. 统计一篇英文文章中出现的 单词 和 词频
  4. python高级在线题目训练-第二套·主观题
  5. QTP自动化测试实践-01
  6. 家长如何让孩子健康上网?
  7. linux脚本遍历数组,浅谈shell 遍历数组的几种方法
  8. 微信公众账号开发模式接入
  9. Displaying a List
  10. Voice input 语音输入