Obtenga números de fila de la array NumPy que tiene un elemento mayor que X

Veamos cómo obtener los números de fila de una array numpy que tiene al menos un elemento mayor que un valor X especificado. Por lo tanto, para realizar esta tarea usaremos las funciones numpy.where() y numpy.any() juntas.

Sintaxis: numpy.where(condición[, x, y])

Devuelve: [ndarray o tupla de ndarrays] Si se especifican tanto x como y, la array de salida contiene elementos de x donde la condición es verdadera y elementos de y en cualquier otro lugar.

Sintaxis: numpy.any(a, axis = None, out = None, keepdims = class numpy._globals._NoValue at 0x40ba726c)

Retorno: [ndarray, opcional] Array de salida con las mismas dimensiones que la array de entrada, colocada con el resultado

Ejemplo :

Arr = [[1,2,3,4,5], 
      [10,-3,30,4,5], 
      [3,2,5,-4,5], 
      [9,7,3,6,5]] 
and X = 6 then output is [ 0, 2 ].

Here, 
[[1,2,3,4,5],
no element is greater than 6 so output is [0].

[10,-3,30,4,5],
10 is greater than 6 so output is [0].

[3,2,5,-4,5],
no element is greater than 6 so output is [0, 2].

[4,7,3,6,5]]
7 is greater than 6 so output is [0, 2].

A continuación se muestra la implementación:

Python3

# importing library
import numpy
  
# create numpy array
arr = numpy.array([[1, 2, 3, 4, 5],
                  [10, -3, 30, 4, 5],
                  [3, 2, 5, -4, 5],
                  [9, 7, 3, 6, 5] 
                 ])
  
# declare specified value
X = 6
  
# view array
print("Given Array:\n", arr)
  
# finding out the row numbers
output  = numpy.where(numpy.any(arr > X,
                                axis = 1))
  
# view output
print("Result:\n", output)

Producción:

Given Array:
[[ 1  2  3  4  5]
[10 -3 30  4  5]
[ 3  2  5 -4  5]
[ 9  7  3  6  5]]
Result:
(array([1, 3], dtype=int64),)

Publicación traducida automáticamente

Artículo escrito por deepanshu_rustagi y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *