在 NumPy 中按特定列对多维数组进行排序
NumPy 提供了强大的数组操作功能,包括按指定列对多维数组进行排序。此功能对于组织和分析数据特别有用。让我们探讨如何在 NumPy 中实现基于列的排序。
假设我们有一个包含多列的 NumPy 数组 a:
a = numpy.array([[9, 2, 3], [4, 5, 6], [7, 0, 5]])
要按第二列对 a 的行进行排序,我们可以利用 argsort() 函数。它接受一个数组并返回对数组进行排序的索引。通过使用这些排序索引对 a 进行索引,我们可以获得所需的排序数组。
sorted_a = a[a[:, 1].argsort()]
此操作会产生以下排序数组:
array([[7, 0, 5], [9, 2, 3], [4, 5, 6]])
语法 a[:, 1 ] 从数组 a 中选择第二列(索引为 1)。应用于此列的 argsort() 会生成排序索引,然后用于对行进行排序。
此技术非常高效且通用,允许按多维数组中的任何所需列进行排序。它提供了一种方便而强大的方式来组织数据并从数据中提取有意义的见解。
以上是如何按特定列对 NumPy 多维数组进行排序?的详细内容。更多信息请关注PHP中文网其他相关文章!