Menu
CoddyTech

Máscaras booleanas

Parte de la sección Datos y gráficos del Journey de Machine Learning de Coddy. Lección 14 de 60.

¿Qué teléfonos necesitan cargarse? Compara un arreglo con un número y cada valor responde True o False. Esa respuesta es una máscara booleana:

Cinco niveles de batería: 80, 15, 42, 9 y 67, mostrados como celdas. Las celdas 15 y 9 están resaltadas, y la máscara de abajo indica False, True, False, True, False

Pon la máscara entre corchetes para conservar los valores True, o súmala para contarlos:

levels = np.array([80, 15, 42, 9, 67])
low = levels < 20
print(levels[low])
print(low.sum())

Esto imprime:

[15  9]
2

True cuenta como 1 y False como 0. Coincide y cuenta, sin bucle.

Combina máscaras con & (ambas) o | (cualquiera de las dos), cada comparación entre paréntesis: (levels > 30) & (levels < 70).

challenge icon

Desafío

Fácil

Una aplicación de mensajería quiere conocer las entregas puntuales de hoy: las que tardan de low a high minutos, ambos incluidos. times está listo, y el programa lee low y high. Imprime:

  1. On time: los tiempos puntuales, en su orden original.
  2. On time count: cuántos hay.
  3. Outside count: cuántos tardaron menos que low o más que high.

Para un intervalo de 30 a 45 minutos:

On time: [34 41 38 31 44]
On time count: 5
Outside count: 7

Pruébalo tú mismo

import numpy as np

times = np.array([18, 34, 25, 41, 22, 29, 15, 38, 27, 31, 44, 20])
low = int(input())
high = int(input())

# Escribe tu código a continuación
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Datos y gráficos

Practica por tu cuenta: Compilador de Python online