📅  最后修改于: 2023-12-03 15:33:14.467000             🧑  作者: Mango
Numpy是Python用于科学计算的基本库之一,它提供了高性能的多维数组对象以及对这些数组对象进行操作的工具。这些工具中包括排序,搜索和计数等。
Numpy提供了多个排序函数,可以方便地对数组进行排序。
np.sort函数返回的是一个排序后的数组,原数组不会被改变。示例代码如下:
import numpy as np
x = np.array([3, 1, 4, 2])
print(np.sort(x)) # 输出 [1 2 3 4]
ndarray.sort方法直接对原数组进行排序,不会返回一个新数组。示例代码如下:
import numpy as np
x = np.array([3, 1, 4, 2])
x.sort()
print(x) # 输出 [1 2 3 4]
np.argsort函数返回的是原数组按照排序后的索引值的数组。示例代码如下:
import numpy as np
x = np.array([3, 1, 4, 2])
print(np.argsort(x)) # 输出 [1 3 0 2]
np.lexsort函数可以对多个数组进行排序。示例代码如下:
import numpy as np
x = np.array([3, 1, 4, 2])
y = np.array([1, 2, 3, 4])
print(np.lexsort((x, y))) # 输出 [1 3 0 2]
Numpy提供了多个搜索函数,可以方便地对数组进行搜索。
np.where函数返回的是原数组中符合条件的索引值的数组。示例代码如下:
import numpy as np
x = np.array([3, 1, 4, 2])
print(np.where(x > 2)) # 输出 (array([0, 2]),)
np.searchsorted函数用于在已排序的数组中查找某个元素的插入位置。示例代码如下:
import numpy as np
x = np.array([1, 2, 3, 4])
print(np.searchsorted(x, 2.5)) # 输出 2
np.extract函数返回的是原数组中符合条件的元素的数组。示例代码如下:
import numpy as np
x = np.array([3, 1, 4, 2])
print(np.extract(x > 2, x)) # 输出 [3 4]
Numpy提供了多个计数函数,可以方便地对数组进行计数。
np.count_nonzero函数返回的是原数组中非零元素的个数。示例代码如下:
import numpy as np
x = np.array([3, 1, 4, 0, 2, 0])
print(np.count_nonzero(x)) # 输出 4
np.bincount函数返回的是原数组中每个元素出现的次数。示例代码如下:
import numpy as np
x = np.array([1, 2, 3, 2, 1, 3, 1])
print(np.bincount(x)) # 输出 [0 3 2 2]
注意:np.bincount函数只能用于非负整数。