La analítica de datos y el procesamiento de infomración, sin importar el ámbito - finanzas, riesgo crediticio o marketing - requieren una comprensión clara de los patrones que subyacen en los datos. En este artículo, exploraremos cómo representar estos patrones de manera visual.
Las tablas de datos y las series temporales son comunes en el modelado de análisis de datos, como en el pronóstico meteorológico, el monitoreo de la calidad del aire y las transacciones financieras. La capacidad de reorganizar y重塑 tableros de datos es una habilidad esencial. Para ilustrar esto, utilizaremos el dataset del Titanic y datos de calidad del aire de ciudades europeas como París y Londres.
Transformaciones en datos categóricos
En el análisis de datos con Pandas, es fundamental saber cómo manejar y combinar series categóricas. Los datos categóricos pueden ser esenciales en escenarios como el procesamiento de señales, series temporales y enfoques de aprendizaje automático.
Configuración previa
Para comenzar, necesitamos importar las bibliotecas necesarias y generar series categóricas:
from pandas.api.types import union_categoricals
import pandas as pd
# Crear series categóricas
cat_series1 = pd.Series(["a", "b"], dtype="category")
cat_series2 = pd.Series(["a", "b", "a"], dtype="category")
cat_series3 = pd.Series(["b", "c"], dtype="category")
Combinación de series categóricas
La combinación de series categóricas puede resultar en diferentes tipos de salida según las condiciones iniciales.
Caso 1: Sereis con categorías iguales
# Series con categorías iguales
combined_same = pd.concat([cat_series1, cat_series2])
print(combined_same)
Resultado:
0 a
1 b
0 a
1 b
2 a
dtype: category
Categories (2, object): ['a', 'b']
Caso 2: Series con categorías diferentes
# Series con categorías diferentes
combined_diff = pd.concat([cat_series1, cat_series3])
print(combined_diff)
Resultado:
0 a
1 b
0 b
1 c
dtype: object
Caso 3: Forzar conversión a categoría
# Forzar conversión a categoría
forced_cat = pd.concat([cat_series1, cat_series3]).astype("category")
print(forced_cat)
Resultado:
0 a
1 b
0 b
1 c
dtype: category
Categories (3, object): ['a', 'b', 'c']
Caso 4: Series numéricas categóricas
# Series numéricas con tipos mixtos
int_cat = pd.Series([1, 2], dtype="category")
float_cat = pd.Series([3.0, 4.0], dtype="category")
# Combinación automática
auto_infer = pd.concat([int_cat, float_cat])
print(auto_infer)
Resultado:
0 1.0
1 2.0
0 3.0
1 4.0
dtype: float64
Tabla resumen de resultados
| Arg1 | Arg2 | Categorías iguales | Tipo de resultado |
|---|---|---|---|
| Categórico | Categórico | Sí | Categórico |
| Categórico | Categórico | No | object (inferido) |
| Categórico (int) | Categórico (float) | No | float (inferido) |
Estos ejemplos son una guía básica que se puede adapptar según las necesidades específicas del proyecto.