寻找NumPy数组中最小的K值
在这篇文章中,让我们看看如何从一个NumPy数组中找到最小值的k数。
示例:
输入: [1,3,5,2,4,6]
k = 3
输出: [1,2,3]
方法1:使用np.sort()。
步骤:
1.创建一个NumPy数组。
2.确定k的值。
3.使用sort()方法将数组按升序排序。
4.打印排序后的数组的前k个值。
# importing the modules
import numpy as np
# creating the array
arr = np.array([23, 12, 1, 3, 4, 5, 6])
print("The Original Array Content")
print(arr)
# value of k
k = 4
# sorting the array
arr1 = np.sort(arr)
# k smallest number of array
print(k, "smallest elements of the array")
print(arr1[:k])
输出:
The Original Array Content
[23 12 1 3 4 5 6]
4 smallest elements of the array
[1 3 4 5]
方法2:使用np.argpartition()。
步骤:
1.创建一个NumPy数组。
2.确定k的值。
3.使用argpartition()方法获得最小的k个元素的索引。
4.从argpartition()得到的数组中获取前k个值,并打印它们相对于原始数组的索引值。
# importing the module
import numpy as np
# creating the array
arr = np.array([23, 12, 1, 3, 4, 5, 6])
print("The Original Array Content")
print(arr)
# value of k
k = 4
# using np.argpartition()
result = np.argpartition(arr, k)
# k smallest number of array
print(k, "smallest elements of the array")
print(arr[result[:k]])
输出:
The Original Array Content
[23 12 1 3 4 5 6]
4 smallest elements of the array
[4 3 1 5]