numpy.argpartition() Die Funktion wird verwendet, um eine indirekte partitionierte Kopie des Eingabearrays zu erstellen, deren Elemente so neu angeordnet sind, dass der Wert des Elements an der k-ten Position an der Position liegt, an der es sich in einem sortierten Array befinden würde. Alle Elemente, die kleiner als das k-te Element sind, werden vor diesem Element verschoben, und alle gleichen oder größeren Elemente werden dahinter verschoben. Die Reihenfolge der Elemente in den beiden Partitionen ist undefiniert. Es wird ein Array von Indizes zurückgegeben, die dieselbe Form wie arr haben, dh arr[index_array] eine Partition von arr ergibt.

Syntax: numpy.argpartition (arr, kth, axis = -1, kind = 'introselect', order = None)

Parameter:
arr: [array_like] Eingabearray.
kth: [int oder Folge von Ints] Elementindex, nach dem partitioniert werden soll.
Achse: [int oder None] Achse, entlang der sortiert werden soll. Wenn Keine, wird das Array vor dem Sortieren abgeflacht. Der Standardwert ist -1, der entlang der letzten Achse sortiert wird.
Art: Auswahlalgorithmus. Die Standardeinstellung ist "introselect".
Reihenfolge: [str oder Liste von str] Wenn arr ein Array mit definierten Feldern ist, gibt dieses Argument an, welche Felder zuerst, zweitens usw. verglichen werden sollen.

Rückgabe: [index_array, ndarray] Array von Indizes, die arr entlang der angegebenen Achse partitionieren.

Code # 1:



   
import numpy as geek 
  
in_arr = geek.array([[ 2, 01], [ 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) 
Ausgabe:
Eingabearray:
 [[2 0 1]
 [5 4 9]]
Ausgabe partitionierter Array-Indizes:
  [[1 2 0]
 [1 0 2]]

 
Code # 2:

   
import numpy as geek 
  
in_arr = geek.array([ 2, 01, 5, 4, 3]) 
print ("Input array : ", in_arr)  
  
out_arr = geek.argpartition(in_arr, (0, 2)) 
print ("Output partitioned array indices: ", out_arr) 
Ausgabe:
Eingabearray: [2 0 1 5 4 3]
Ausgabe partitionierter Array-Indizes: [1 2 0 3 4 5]