Reorganizando datos con Pandas

PythonPythonBeginner
Practicar Ahora

This tutorial is from open-source community. Access the source code

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En este laboratorio, exploraremos cómo reorganizar datos en pandas utilizando varias funciones como sort_values, pivot, pivot_table y melt. Trabajaremos con los conjuntos de datos del Titanic y la Calidad del Aire para demostrar las técnicas de reorganización.

Consejos sobre la VM

Una vez finalizada la inicialización de la VM, haga clic en la esquina superior izquierda para cambiar a la pestaña Cuaderno y acceder a Jupyter Notebook para practicar.

A veces, es posible que tenga que esperar unos segundos a que Jupyter Notebook termine de cargarse. La validación de las operaciones no se puede automatizar debido a las limitaciones de Jupyter Notebook.

Si tiene problemas durante el aprendizaje, no dude en preguntar a Labby. Deje su retroalimentación después de la sesión y resolveremos el problema rápidamente para usted.

Importar bibliotecas y cargar datos

Primero, importemos las bibliotecas necesarias y carguemos los conjuntos de datos.

import pandas as pd

## Cargar el conjunto de datos del Titanic
titanic = pd.read_csv("data/titanic.csv")

## Cargar el conjunto de datos de Calidad del Aire
air_quality = pd.read_csv("data/air_quality_long.csv", index_col="date.utc", parse_dates=True)

Ordenar filas de la tabla

Ordene el conjunto de datos del Titanic según la edad de los pasajeros y luego por clase de cabina y edad en orden descendente.

## Ordenar por Edad
titanic.sort_values(by="Age").head()

## Ordenar por Pclass y Edad en orden descendente
titanic.sort_values(by=['Pclass', 'Age'], ascending=False).head()

Convertir de formato de tabla larga a ancha

Ahora convertiremos los datos de calidad del aire en formato largo a formato ancho utilizando la función pivot.

## Filtrar solo datos de no2
no2 = air_quality[air_quality["parameter"] == "no2"]

## Usar 2 mediciones (head) para cada ubicación (groupby)
no2_subset = no2.sort_index().groupby(["location"]).head(2)

## Hacer pivote de los datos
no2_subset.pivot(columns="location", values="value")

Crear una tabla dinámica

Crea una tabla dinámica para encontrar las concentraciones promedio de 𝑁𝑂2 y 𝑃𝑀25 en cada una de las estaciones.

air_quality.pivot_table(
    values="value", index="location", columns="parameter", aggfunc="mean"
)

Convertir de formato ancho a largo

Ahora, convertiremos los datos de 𝑁𝑂2 en formato ancho a formato largo utilizando la función melt.

## Restablecer el índice para no2_pivoted
no2_pivoted = no2.pivot(columns="location", values="value").reset_index()

## Fundir los datos
no_2 = no2_pivoted.melt(id_vars="date.utc")

Resumen

En este laboratorio, aprendimos cómo reorganizar datos en pandas utilizando varias funciones como sort_values, pivot, pivot_table y melt. Aplicamos estas técnicas en los conjuntos de datos del Titanic y de Calidad del Aire para ordenar, hacer pivote y fundir los datos. Estas técnicas de reorganización son esenciales al trabajar con datos en pandas y pueden ayudarnos a analizar y visualizar eficientemente los datos.