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

Barbara Streisand
Release: 2024-10-31 20:10:29
Original
718 people have browsed it

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

Optimal Ranking of Array Items with Minimal Sorting in Python/NumPy

To rank numbers within an array without resorting to the computationally expensive double sorting process, a more efficient approach exists.

Utilizing NumPy's argsort function, the order of the numbers can be determined without altering the original array:

<code class="python">order = array.argsort()</code>
Copy after login

Subsequently, argsort can be applied to the order array to obtain the rankings:

<code class="python">ranks = order.argsort()</code>
Copy after login

This approach eliminates the redundant sorting of the original array, resulting in a more optimized ranking algorithm.

It is crucial to note that for multidimensional arrays, specifying the correct axis to argsort is essential. For instance, to rank a 2D array by rows:

<code class="python">ranks = array.argsort(axis=1)</code>
Copy after login

The above is the detailed content of How to Efficiently Rank Array Items in Python/NumPy without Double Sorting?. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Articles by Author
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!