📅  最后修改于: 2023-12-03 15:18:57.169000             🧑  作者: Mango
numpy.sort()
是一个用来排序 numpy 数组的函数。该函数可以按照给定的轴按行或列进行排序,并返回已排序的数组。
numpy.sort()
的语法如下所示:
numpy.sort(a, axis=-1, kind=None, order=None)
参数解释:
a
:需要排序的数组。axis
:默认为 -1,表示按行排序。若要按列排序,则需要指定 axis=0
。kind
:默认为 quicksort
,表示使用快速排序算法进行排序。还可以选择 mergesort
和 heapsort
算法进行排序。order
:表示需要排序的字段。import numpy as np
a = np.array([[3, 7], [9, 1]])
print(np.sort(a)) # [[3 7]
# [1 9]]
b = np.array([3, 1, 4, 1, 5, 9, 2, 6, 5])
print(np.sort(b)) # [1 1 2 3 4 5 5 6 9]
c = np.array(['w', 'q', 'a', 'b', 'g', 'c'])
print(np.sort(c)) # ['a' 'b' 'c' 'g' 'q' 'w']
在示例中,我们已经可以按行或列排序数组。有时候,我们需要按照数组的某个字段进行排序。为此,我们需要指定 order
参数。例如:
import numpy as np
dt = np.dtype([('name', 'S10'), ('age', int)])
a = np.array([('Tom', 25), ('John', 20), ('Amy', 30), ('Bob', 35)], dtype=dt)
print(np.sort(a, order='name')) # [(b'Amy', 30) (b'Bob', 35) (b'John', 20) (b'Tom', 25)]