About this question
Want to sort a NumPy array by multiple columns, similar to sorting a spreadsheet by more than one column? Learn how to use NumPy's advanced indexing and argsort() to sort rows with multiple sorting keys efficiently.
Want to sort a NumPy array by multiple columns, similar to sorting a spreadsheet by more than one column? Learn how to use NumPy's advanced indexing and argsort() to sort rows with multiple sorting keys efficiently.
Log in to share your answer and help other learners.
Log in to answerBest Answer · By JanBask Python Expert
Answered on Jul 18, 2025
Sorting rows with multiple sorting keys in NumPy is a common task when working with structured or tabular data. Think of it like sorting a spreadsheet first by one column (like last name), then by another (like first name). In NumPy, this is typically done using np.lexsort() or chained argsort() operations.
Here’s how you can do it in a clean and efficient way:
Example:
import numpy as np
data = np.array([[1, 2, 3],
[1, 1, 2],
[2, 2, 1],
[1, 1, 1]])
# Sort by column 0 (then) column 1 (primary key)
sorted_data = data[np.lexsort((data[:,1], data[:,0]))]
print(sorted_data) Explanation:
This will sort the rows primarily by column 0 and then by column 1.
Benefits:
Pro Tip:
Free tutorials and interview questions from industry experts — learn the skill, then get ready to prove it.
Most-read guides across JanBask
Common Python interview questions, answered
Guides, tips and career advice on Python from JanBask experts.
Python How to Become a Python Developer: A Step-by-Step Guide for Beginners
Discover how to become a Python Developer via a practical 7-step guide build projects, maintain clean code, practice daily, and…
Python PCEP Certification Guide: Entry-Level Python Programmer Certification
Explore this PCEP certification guide for insights on cost, exam format, passing score, application, training, and study tips.…
Python Top 50+ Python Projects ideas for Beginners to Advanced
Discover innovative Python project ideas, explore advanced Python projects, and find good Python projects for beginners and…
Python How To Comment Out Multiple Lines In Python Like A Pro
Commenting out code is a common practice among programmers. It allows you to temporarily disable parts of your code without…