Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Agrupamiento Avanzado | Agregación de Datos
Manipulación de Datos con Pandas
Sección 4. Capítulo 4
single

single

bookAgrupamiento Avanzado

Desliza para mostrar el menú

Ampliemos nuestro conocimiento sobre el método .groupby(). Como recordará, podemos utilizar el método .agg(). La principal ventaja de esta función es su flexibilidad: permite aplicar múltiples y diferentes agregaciones a varias columnas al mismo tiempo, devolviendo una tabla resumen clara.

Observe el siguiente ejemplo. Agrupamos los vuelos por 'Airline'. Luego, usando .agg(), contamos el número total de vuelos (utilizando la columna 'Delay') y, simultáneamente, encontramos la duración más corta y más larga de los vuelos (utilizando la columna 'Length'). Muy conveniente, ¿verdad?

1234
import pandas as pd data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/plane', index_col = 0) data_flights = data.groupby('Airline').agg({'Delay': 'count', 'Length': ['min', 'max']}) print(data_flights.head(10))
copy

Explicación:

.agg({'Delay': 'count', 'Length': ['min', 'max']})
  • .agg(): Abreviatura de "aggregate" (agregar). Este método toma los datos agrupados y los condensa en estadísticas resumidas según las reglas que proporcione.
  • {}: Se utiliza un diccionario de Python para asignar columnas específicas a operaciones específicas. Las claves son los nombres de las columnas que desea seleccionar y los valores son las funciones que desea aplicar.
  • 'Delay': 'count': Indica a pandas que aplique la función de conteo a la columna 'Delay' para cada grupo. Observe que se pasa el alias de cadena 'count' en lugar de escribir count(). Pandas reconoce estos nombres estándar de cadena para estadísticas comunes.
  • 'Length': ['min', 'max']: Si desea aplicar más de una función a una sola columna, debe colocar los nombres de las funciones dentro de una lista []. Aquí, se calculan tanto los valores mínimos como máximos para la columna 'Length'.

Debido a que se aplicaron múltiples funciones, el DataFrame resultante creará automáticamente columnas jerárquicas (MultiIndex). Verá Length en el nivel superior, con min y max categorizados ordenadamente debajo de él.

Tarea

Swipe to start coding

Tu tarea es profundizar y analizar los tiempos promedio y máximo de retraso según el aeropuerto de origen del vuelo y luego según el aeropuerto de destino. Además, revisa la mediana de la duración del vuelo. Sigue el siguiente algoritmo:

Agrupar los datos:

  • Aplica el método .groupby() al conjunto de datos data;
  • Dentro del método .groupby(), coloca las columnas 'AirportFrom' y 'AirportTo'; el orden es fundamental;
  • Utilizando el método .agg(), calcula los valores agregados: el valor promedio y máximo en la columna 'Time', y el valor mediano de la columna 'Length'.

Solución

Switch to desktopCambia al escritorio para practicar en el mundo realContinúe desde donde se encuentra utilizando una de las siguientes opciones
¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 4. Capítulo 4
single

single

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

some-alt