Menu
CoddyTech

Máscaras booleanas

Parte da seção Dados e gráficos do Journey de Machine Learning da Coddy. Lição 14 de 60.

Quais telefones precisam ser carregados? Compare um array com um número, e cada valor responde True ou False. Essa resposta é uma máscara booleana:

Cinco níveis de bateria: 80, 15, 42, 9 e 67, como células. As células 15 e 9 estão destacadas, e a máscara abaixo mostra False, True, False, True, False

Coloque a máscara entre colchetes para manter os valores True ou some-a para contá-los:

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

Isso imprime:

[15  9]
2

True conta como 1 e False como 0. Correspondências e contagens, sem loop.

Combine máscaras com & (ambos) ou | (qualquer um), cada comparação entre parênteses: (levels > 30) & (levels < 70).

challenge icon

Desafio

Fácil

Um aplicativo de entregas quer saber quais entregas de hoje chegaram no prazo: aquelas que levaram de low a high minutos, incluindo ambos os limites. times já está pronto, e o programa lê low e high. Imprima:

  1. On time: os tempos das entregas no prazo, na ordem original.
  2. On time count: quantas são.
  3. Outside count: quantas foram mais rápidas que low ou mais lentas que high.

Para um intervalo de 30 a 45 minutos:

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

Experimente você mesmo

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())

# Escreva seu código abaixo
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Dados e gráficos

Pratique por conta própria: Compilador de Python online