typestar

Máscaras booleanas en Python

Un arreglo booleano selecciona, cuenta y asigna en una sola expresión.

import numpy as np

valores = np.array([5, 12, 7, 20, 3])
grandes = valores > 8

print(grandes, grandes.sum())
print(valores[grandes])
print(np.where(grandes, valores, 0))

valores[valores < 5] = 0
print(valores)
print(np.any(grandes), np.all(grandes))

Cómo funciona

  1. Una comparación da una máscara con la misma forma.
  2. sum sobre una máscara cuenta los True.
  3. Asignar a través de una máscara escribe solo donde es True.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
12
Caracteres a escribir
252
Tokens
85
Ritmo de tres estrellas
105 tpm

Al ritmo de tres estrellas de 105 tokens por minuto, este intento toma unos 49 segundos.

Escribe este fragmento

Paso 1 de 3 en Indexación; paso 13 de 22 en NumPy.

← Anterior Siguiente →