按第一行对 numpy 二维数组进行排序,保留列

2023-12-05

在 python 中,我有一个以下形式的 numpy 数组:

[4 8 2 0 5]
[3 1 6 8 1]
[2 2 6 0 3]
[9 7 6 7 8]
[5 8 1 1 4]

我想按第一行的值从左到右按升序对其进行排序,同时保持整个列完好无损。实际的数组的尺寸未指定,而且相当巨大,因此我自己用 for 循环编写一些东西会变得非常慢。结果应该是:

[0 2 4 5 8]
[8 6 3 1 1]
[0 6 2 3 2]
[7 6 9 8 7]
[1 1 5 4 8]

我可以使用 argsort 获得一个列索引正确排序的行向量,但不知道从那里开始实际构建新数组。


源数组:

In [215]: a
Out[215]:
array([[4, 8, 2, 0, 5],
       [3, 1, 6, 8, 1],
       [2, 2, 6, 0, 3],
       [9, 7, 6, 7, 8],
       [5, 8, 1, 1, 4]], dtype=int64)

使用 Numpy 索引:

In [218]: a[:, a[0].argsort()]
Out[218]:
array([[0, 2, 4, 5, 8],
       [8, 6, 3, 1, 1],
       [0, 6, 2, 3, 2],
       [7, 6, 9, 8, 7],
       [1, 1, 5, 4, 8]], dtype=int64)

使用熊猫:

In [212]: pd.DataFrame(a).sort_values(0, axis=1).values
Out[212]:
array([[0, 2, 4, 5, 8],
       [8, 6, 3, 1, 1],
       [0, 6, 2, 3, 2],
       [7, 6, 9, 8, 7],
       [1, 1, 5, 4, 8]], dtype=int64)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

按第一行对 numpy 二维数组进行排序,保留列 的相关文章

  • cv2.face.mindistancepredictcollector() 错误

    我已经安装了带有额外模块的 opencv 3 1 0 但是当我尝试使用 gt gt gt s cv2 face MinDistancePredictCollector 它返回一个错误 Traceback most recent call l
  • Python中使用cv2获取当前视频播放位置

    我正在尝试使用 CV2 和 Python 从播放视频中获取当前播放时间位置 如果可能 以毫秒为单位 目前我正在使用此示例代码来播放视频文件 import cv2 import numpy as np file name 2 mp4 wind
  • 如何在 pygame 中聚焦光线或如何仅绘制窗口的某些圆形部分?

    对于这一点 如果您熟悉它 请想想 超级马里奥制造2 中嘘关卡中的黑暗模式 我试图在角色周围创建一个圆形聚光灯 这也将使圆圈范围内的任何内容都可见 例如部分站在地板上 敌人或场景中的任何其他物体 我的计划是首先绘制圆圈 聚光灯 然后绘制场景
  • 如何垂直打印数组中的字符串元素? [关闭]

    Closed 这个问题需要调试细节 help minimal reproducible example 目前不接受答案 我有一个数组 我想垂直打印每个元素 例如 myArr abc def ghi 输出应该是 a d g b e h c f
  • 计算复杂数组的abs()值的最快方法

    我想计算 C 或 C 中复杂数组元素的绝对值 最简单的方法是 for int i 0 i lt N i b i cabs a i 但对于大向量来说 速度会很慢 有没有办法加快速度 例如使用并行化 语言可以是 C 或 C 鉴于所有循环迭代都是
  • int 对象在尝试对数字的数字求和时不可迭代? [复制]

    这个问题在这里已经有答案了 我有这个代码 inp int input Enter a number for i in inp n n i print n 但它抛出一个错误 int object is not iterable 我想通过将每个
  • 如何使用泛型类型的构造函数

    如何使用 python 泛型类型的构造函数 T typing TypeVar T class MyClass typing Generic T def init self initialValue typing Iterable self
  • 如何最好地将包含列表或元组的 Pandas 列提取到多个列中[重复]

    这个问题在这里已经有答案了 我不小心用错误重复的链接关闭了这个问题 这是正确的 Pandas 将列表的列拆分为多列 https stackoverflow com questions 35491274 pandas split column
  • Python3.1中的视图?

    Python3 1中的视图到底是什么 它们的行为方式似乎与迭代器类似 并且它们也可以具体化为列表 迭代器和视图有何不同 据我所知 视图仍然附加到创建它的对象上 对原始对象的修改会影响视图 来自docs http docs python or
  • 在 Docker 容器内运行时,如何自动在 API 路由文件中进行 FASTAPI 拾取更改?

    我通过 docker 运行 FastApi 在 docker compose 中创建一个名为 ingestion data 的服务 我的 Dockerfile FROM tiangolo uvicorn gunicorn fastapi p
  • 如何在树莓派上更新到最新的 python 3.5.1 版本?

    我昨天拿到了 Raspberry Pi 我已经在尝试用它来编写代码了 我有一个计划在其上运行的程序 但它仅与 Python 版本 3 5 0 或 3 5 1 兼容 并且我在互联网上找到的所有内容似乎都已经过时 与 Python 2 有关 或
  • 在Python中引用不带换行符的长字符串

    我正在尝试在 Python 中编写一个长字符串 该字符串显示为 OptParser 选项的帮助项 在我的源代码 py 文件中 我想放置换行符 以便我的代码不会花费新行 但是 我不希望这些换行符影响代码运行时该字符串的显示方式 例如 我想写
  • 仅对某些行的不同大小的两个 pandas 数据帧的列进行求和

    我有两个 pandas 数据框 如下所示 df1 n column1 0 5 0 0 0 1 6 0 0 0 2 7 0 0 0 3 8 0 0 0 4 9 0 0 0 5 10 0 0 0 df2 n column2 0 6 0 1 0
  • 避免在列表理解中计算相同的表达式两次[重复]

    这个问题在这里已经有答案了 我在列表理解中使用一个函数和一个 if 函数 new list f x for x in old list if f x 0 令我恼火的是这个表达f x 在每个循环中计算两次 有没有办法以更清洁的方式做到这一点
  • Python 类方法的示例用例是什么?

    我读了Python 中的类方法有什么用 https stackoverflow com questions 38238 what are class methods in python for但那篇文章中的例子很复杂 我正在寻找 Pytho
  • 检测图像是否损坏或损坏

    我需要以编程方式检查用户在我的应用程序上选择作为壁纸的图像是否已损坏或损坏 基本上我为用户提供了选择自己的图像作为壁纸的选项 现在 当图像加载时 我只想检查它是否已损坏 如果您正在寻找 PHP 解决方案而不是 javascript 解决方案
  • 安排 Asyncio 任务每 X 秒执行一次?

    我正在尝试创建一个 python 不和谐机器人 它将每隔 X 秒检查一次活跃会员 并根据会员的在线时间奖励积分 我正在使用 asyncio 来处理聊天命令 这一切都正常 我的问题是找到一种方法来安排每隔 X 秒异步检查一次活动成员 我已经阅
  • python pandas如何在多个条件下过滤字符串

    我有以下数据框 import pandas as pd data 5Star FiveStar five star fiv estar data pd DataFrame data columns columnName 当我尝试用一 种条件
  • 连接运算符 + 或 ,

    var1 abc var2 xyz print literal var1 var2 literalabcxyz print literal var1 var2 literal abc xyz 除了带有 的自动空格之外 两者有什么区别 哪个通
  • Python列表问题

    我在使用 python 列表时遇到问题 简化版本是 mylist1 some items in a list mylist2 mylist1 mylist1 pop i mylist insert i item print mylist1

随机推荐

  • C#中的滑动窗口算法

    我正在尝试在 C 3 0 中的二维数组上实现简单的滑动窗口算法 我发现this非常有用 但它只涉及一维数组 The post还包括算法的代码 我完全无法将它用于我的场景 任何人都可以建议我如何继续吗 设想 source googlepage
  • 在 MVC javascript 部分解析@? [复制]

    这个问题在这里已经有答案了 我正在尝试使用电子邮件RegEx在 MVC4 的 javascript 部分 但RegEx有 char 它不允许解析它 error Parser Error Message is not valid at the
  • 如何检查进程是否正在运行

    我正在使用下面的代码启动一个进程 QProcess process new QProcess process gt start Path start 方法将启动第三方应用程序 如果进程已经在运行 我不应该再次调用 process gt st
  • 将变量从批处理传递到 powershell

    我有一个批处理文件 要求用户提供变量行set p asset 我这样调用我的 powershell 脚本 SET ThisScriptsDirectory dp0 SET PowerShellScriptPath ThisScriptsDi
  • 继续使用 MPMoviePlayerController 播放声音并锁定屏幕?

    当您观看视频时MPMoviePlayerController用户按下顶部按钮锁定屏幕 应用程序进入睡眠状态 视频中的声音也进入睡眠状态 有什么办法可以让锁停止声音吗 如果没有 有没有办法拦截锁 创建 自定义锁 以节省一些电池但继续播放视频
  • 有没有办法显示 PowerShell 脚本中的所有函数?

    是否有任何命令可以列出我在脚本中创建的所有函数 就像我创建了函数 doXY 和函数 getABC 或类似的东西 然后我输入命令 它显示 函数 doXY 函数 getABC 这将是一个很酷的功能 感谢你的帮助 您可以让 PowerShell
  • Flash Player 10.1 的全局错误处理程序不起作用

    尝试在我的项目中实现新的 FP 10 1 全局错误处理程序 但无论我做什么 任何未捕获的错误仍然会显示 异常 窗口 在 SWF 的调试版本和发布版本中 我想做的就是阻止这些弹出窗口 而是向我的记录器发送消息 这是我的代码 编辑 我现在简化了
  • 如何在 Mozilla Firefox 中一键复制文本?

    此代码在 Google Chrome Opera IE 11 中运行良好 但在 Mozilla firefox 和 Safari 中不起作用 我在以下字符串中收到错误 var 成功 document execCommand 复制
  • 保存和加载音频

    Unity 当我单击 录制 按钮时 Microphone Start 内置麦克风 true 10 44100 当我单击 暂停 按钮时 SavWav Save Application persistentDataPath Resources
  • 复杂的 SPARQL 查询 - Virtuoso 性能提示?

    我有一个相当复杂的 SPARQL 查询 它在并行线程 400 个线程 中执行数千次 为了提高可读性 这里对查询进行了一定程度的简化 命名空间 属性和变量已减少 但复杂性保持不变 联合 图形数量等 该查询针对 4 个图运行 其中最大的包含 5
  • Google BigQuery 表补丁/更新不起作用

    Google Http Request object batchHeaders gt array 3 Content Type gt string application http Content Transfer Encoding gt
  • 如何在打印时去掉数组括号

    打印数组时如何去掉左右括号 var array 1 2 3 4 println array It prints 1 2 3 4 var arrayWithoutBracketsAndCommas array some code printl
  • 如何本地化 Windows 应用商店应用中的通知和组合框? (C#/XAML,多语言应用程序工具包)

    我在 Windows 应用商店应用程序本地化方面遇到一些问题 我能够本地化 xaml 内容 例如 TextBlock Text 或 Button Content 我正在以与此处所示相同的方式进行操作 但我不知道如何本地化以下内容 1 我的组
  • 我是否使用了太多 jQuery?我什么时候越线?

    最近我发现自己经常使用 jQuery 和 JavaScript 经常做与使用 CSS 之前相同的事情 例如 我使用 JavaScript jQuery 替换表格行颜色或创建按钮和链接悬停效果 这是可以接受的吗 或者我应该继续使用 CSS 来
  • 通过读取kafka的详细信息动态创建flink窗口

    假设 Kafka 消息包含 flink 窗口大小配置 我想读取来自 Kafka 的消息并在 flink 中创建一个全局窗口 问题陈述 我们可以使用 BroadcastStream 来处理上述场景吗 Or 还有其他方法可以支持上述情况吗 Fl
  • 数组交换 - 二维数组

    我正在研究交换二维数组中的索引 我似乎走在正确的轨道上 但它没有按照我想要的方式交换数组 第一行的索引j需要与第 2 行的索引交换j for int j 0 j lt array length j int temp array row1 j
  • HTML 表格导出至 Excel(XLS 或 CSV)

    我正在尝试将 HTML 表格内容导出到 Excel 我看见这个解决方案这有效但没有达到我的预期 因为我无法选择要复制的列 和它不适用于大桌子 还有另一种解决方案是通过js复制并手动粘贴到excel文件 但效果不太好 而且我不太喜欢这种方法
  • 是否存在批量检查区分大小写

    我需要检查给定文件是否存在 区分大小写 out txt 均为小写字母 文件是否存在于我运行脚本的位置 Code Case1 filename out txt if exist filename echo file exist else ec
  • 撤销 OAuth 访问令牌会导致 404 Not Found

    我正在开发一个与 GitHub 集成的应用程序 但在 注销 之前经过身份验证的用户时遇到问题 当我尝试撤销用户的授权令牌时 我从 API 收到 404 Not Found 响应 根据文档 看来我应该能够做一个DELETE请求https ap
  • 按第一行对 numpy 二维数组进行排序,保留列

    在 python 中 我有一个以下形式的 numpy 数组 4 8 2 0 5 3 1 6 8 1 2 2 6 0 3 9 7 6 7 8 5 8 1 1 4 我想按第一行的值从左到右按升序对其进行排序 同时保持整个列完好无损 实际的数组的