numpy.nonzero()
La función se utiliza para calcular los índices de los elementos que no son cero.
Devuelve una tupla de arrays, una para cada dimensión de arr, que contiene los índices de los elementos distintos de cero en esa dimensión.
Los valores distintos de cero correspondientes en la array se pueden obtener con arr[nonzero(arr)]
. Para agrupar los índices por elemento, en lugar de por dimensión, podemos usar transpose(nonzero(arr))
.
Sintaxis: numpy.nonzero(arr)
Parámetros:
arr: [array_like] Array de entrada.Devuelve: [tuple_of_arrays] Índices de elementos que no son cero.
Código #1: Trabajando
# Python program explaining # nonzero() function import numpy as geek arr = geek.array([[0, 8, 0], [7, 0, 0], [-5, 0, 1]]) print ("Input array : \n", arr) out_tpl = geek.nonzero(arr) print ("Indices of non zero elements : ", out_tpl)
Producción :
Array de entrada:
[[ 0 8 0]
[ 7 0 0]
[-5 0 1]]
Índices de elementos distintos de cero: (array([0, 1, 2, 2], dtype=int64), array([1, 0, 0, 2], dtipo=int64))
Código #2:
# Python program for getting # The corresponding non-zero values: out_arr = arr[geek.nonzero(arr)] print ("Output array of non-zero number: ", out_arr)
Producción :
Output array of non-zero number: [ 8 7 -5 1]
Código #3:
# Python program for grouping the indices # by element, rather than dimension out_ind = geek.transpose(geek.nonzero(arr)) print ("indices of non-zero number: \n", out_ind)
Producción :
indices of non-zero number: [[0 1] [1 0] [2 0] [2 2]]
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