numpy.argpartition()
La función se usa para crear una copia con partición indirecta de la array de entrada con sus elementos reorganizados de tal manera que el valor del elemento en la k-ésima posición está en la posición en la que estaría en una array ordenada. Todos los elementos más pequeños que el k-ésimo elemento se mueven antes de este elemento y todos los iguales o mayores se mueven detrás de él. El orden de los elementos en las dos particiones no está definido. Devuelve una array de índices de la misma forma que arr, es decir, arr[index_array]
produce una partición de arr.
Sintaxis: numpy.argpartition(arr, kth, axis=-1, kind=’introselect’, order=Ninguno)
Parámetros:
arr: [array_like] Array de entrada.
kth : [int o secuencia de enteros] Índice del elemento por el que se va a particionar.
axis : [int o None] Eje a lo largo del cual ordenar. Si es Ninguno, la array se aplana antes de ordenar. El valor predeterminado es -1, que ordena a lo largo del último eje.
kind : Algoritmo de selección. El valor predeterminado es ‘introselect’.
orden: [str o lista de str] Cuando arr es una array con campos definidos, este argumento especifica qué campos comparar primero, segundo, etc.Devuelve: [index_array, ndarray] Array de índices que dividen arr a lo largo del eje especificado.
Código #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]]
Código #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]
Publicación traducida automáticamente
Artículo escrito por jana_sayantan y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA