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
- Una comparación da una máscara con la misma forma.
sumsobre una máscara cuenta los True.- Asignar a través de una máscara escribe solo donde es True.
Palabras clave y builtins usados aquí
asprint
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.
Paso 1 de 3 en Indexación; paso 13 de 22 en NumPy.