📜  Python中的 numpy.argpartition()

📅  最后修改于: 2022-05-13 01:55:49.565000             🧑  作者: Mango

Python中的 numpy.argpartition()

numpy.argpartition()函数用于创建输入数组的间接分区副本,其元素以这样的方式重新排列,即第 k 个位置的元素的值位于它在排序数组中的位置。所有小于第 k 个元素的元素都移到该元素之前,所有等于或大于第 k 个元素的元素都移到它后面。两个分区中元素的顺序未定义。它返回与 arr 形状相同的索引数组,即arr[index_array]产生 arr 的分区。

代码#1:

# Python program explaining
# argpartition() function
   
import numpy as geek
  
# input array
in_arr = geek.array([[ 2, 0,  1], [ 5, 4, 9] ])
print ("Input array : \n", in_arr) 
  
out_arr = geek.argpartition(in_arr, 1, axis = 1)
print ("Output partitioned array indices :\n ", out_arr)
输出:
Input array : 
 [[2 0 1]
 [5 4 9]]
Output partitioned array indices :
  [[1 2 0]
 [1 0 2]]


代码#2:

# Python program explaining
# argpartition() function
   
import numpy as geek
  
# input array
in_arr = geek.array([ 2, 0,  1, 5, 4, 3])
print ("Input array : ", in_arr) 
  
out_arr = geek.argpartition(in_arr, (0, 2))
print ("Output partitioned array indices: ", out_arr)
输出:
Input array :  [2 0 1 5 4 3]
Output partitioned array indices:  [1 2 0 3 4 5]