Filtrado de filas
Parte de la sección Datos y gráficos del Journey de Machine Learning de Coddy. Lección 38 de 60.
La mayoría de las preguntas conservan solo algunas filas: apartamentos por menos de 1000 al mes, pacientes mayores de 60 años. Una comparación en una columna da True o False para cada fila, una máscara:
flats = pd.DataFrame({
"area": ["North", "Center", "East", "Center", "West"],
"rooms": [2, 1, 3, 3, 2],
"rent": [950, 1200, 1100, 1650, 800],
})
print(flats[flats["rent"] < 1000])Dentro de los corchetes de la tabla, la máscara conserva las filas True, con sus etiquetas:
area rooms rent
0 North 2 950
4 West 2 800Combina condiciones con & (ambas) o | (cualquiera), cada una entre paréntesis, como con las máscaras de matrices:
print(flats[(flats["rooms"] >= 2) & (flats["rent"] < 1200)])Esto imprime:
area rooms rent
0 North 2 950
2 East 3 1100
4 West 2 800El texto también funciona: flats["area"] == "Center". Y .shape[0] cuenta las filas que coincidieron.
Desafío
IntermedioUn club de excursionismo enumera sus senderos en trails.csv, con las columnas trail, km y climb_m (metros de ascenso). El programa lee una distancia máxima max_km y un ascenso mínimo min_climb.
- Guarda en
pickedlos senderos que midan como máximomax_kmy tengan un ascenso de al menosmin_climbmetros. - Imprime
picked. - Imprime cuántos senderos cumplen los requisitos, como se muestra abajo.
Para una lista diferente de senderos:
trail km climb_m
1 Bear Creek 6.0 300
5 Old Quarry 9.2 455
Trails that fit: 2Pruébalo tú mismo
import pandas as pd
trails = pd.read_csv("trails.csv")
max_km = float(input())
min_climb = int(input())
# Escribe tu código a continuación
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
4Dar forma a los datos
Cambiar la forma de los arraysUnir arraysNúmeros aleatoriosRepaso: simulación de dados2Arrays de NumPy
Creación de arraysForma y tamañoRangos de númerosIndexación y segmentaciónRepaso: cuadrícula de temperaturas5Gráficos de líneas y de dispersión
Etiquetas y títulosGráficos de dispersiónVarias líneas y leyendasColores y marcadoresFiguras y ejesRepaso: pasos semanales8Filtrado y ordenación
Selección de filasFiltrado de filasOrdenación de valoresNuevas columnasRepaso: productos principales3Matemáticas con arrays
Operaciones matemáticas con arrays completosEstadísticas resumidasEstadísticas por ejeDifusiónMáscaras booleanasRepaso: calificaciones de exámenes6Gráficos para datos
Gráficos de barrasHistogramasVarios gráficos en unoImágenes como matricesRepaso: informe de precipitacionesPractica por tu cuenta: Compilador de Python online