如何在 Python/NumPy 中高效地对数组项进行排序而无需双重排序?

Barbara Streisand
发布: 2024-10-31 20:10:29
原创
717 人浏览过

How to Efficiently Rank Array Items in Python/NumPy without Double Sorting?

在 Python/NumPy 中使用最小排序对数组项进行最佳排名

对数组中的数字进行排名,而无需借助计算成本高昂的双重排序

利用 NumPy 的 argsort 函数,可以在不改变原始数组的情况下确定数字的顺序:

<code class="python">order = array.argsort()</code>
登录后复制

随后,argsort 可以应用于order array 来获得排名:

<code class="python">ranks = order.argsort()</code>
登录后复制

这种方法消除了原始数组的冗余排序,从而产生更优化的排名算法。

需要注意的是,对于多维数组,为 argsort 指定正确的轴至关重要。例如,要按行对二维数组进行排名:

<code class="python">ranks = array.argsort(axis=1)</code>
登录后复制

以上是如何在 Python/NumPy 中高效地对数组项进行排序而无需双重排序?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!