NumPy partition()
函数
原文:https://www.studytonight.com/numpy/numpy-partition-function
在本教程中,我们将介绍 Numpy 库的numpy.partition()
功能。
partition()
函数是,用于根据给定的参数相应地分割输入数组。
此函数返回输入数组的分区副本。
在数组的分区副本中,元素以这样一种方式重新排列,即第 kth 位置的元素取数组排序后的位置。
所有小于第 kth 个元素的元素都在这个元素之前移动,所有等于或大于它的元素都在它后面移动。
如果存在值等于第 kth 个元素的数据元素,则两个分区中元素的顺序保持不变。
numpy.partition()
的语法:
使用此方法所需的语法如下:
numpy.partition(arr, kth, axis, kind, order)
参数:
现在让我们看看这个函数的参数:
arr 该参数表示要排序的输入数组。
kth 它是一个整数或整数序列。该参数指示需要围绕其执行分区的元素的索引。
轴 该参数表示元素排序的轴。该参数的默认值为 -1 (表示沿最后一个轴排序)。
种类 此参数用于定义您要执行的排序种类。该参数的默认值为“intro select”。
顺序 对于定义了字段的数组
arr
,该参数用于指定首先比较哪些字段,其次比较哪些字段,等等。
返回值:
该函数将返回与输入数组相同类型和形状的数组。
例 1:
代码片段如下,我们将在其中使用partition()
函数:
import numpy as np
inp_ar = np.array([2, 0, 1, 5, 4, 9, 78, 34])
print ("The Input array : ")
print(inp_ar)
output = np.partition(inp_ar, 5)
print ("The Output partitioned array : ")
print(output)
输入数组: 【2 0 1 5 4 9 78 34】 输出分区数组: 【4 2 1 0 5 9 34 78】
从上述代码片段的输出中可以得出结论,所有小于第 5 个位置的元素(即 9 )的元素都放置在 9 的左侧,所有大于 9 的元素都放置在分隔符元素(第 5 个元素)的右侧。
另外,注意输出数组中出现的元素的顺序是未定义的。
例 2:
import numpy as np
arr = np.array([7, 4, 8, 1, 10, 13])
print("The Input array is :")
print(arr)
output = np.partition(arr, (1, 3))
print("The Output Partitioned array is :")
print(output)
输入数组为: 【7 4 8 1 10 13】 输出分区数组为: 【1 4 7 8 10 13】
摘要
在本教程中,我们学习了 Numpy 库的numpy.partition()
功能。我们介绍了如何使用它的语法和这个函数返回的值,以及一些代码示例,以帮助您理解这个概念。