# Introducción al manejo de datos en Python 🐍 --- **Sobre el curso:** Este curso está diseñado para fomentar el aprendizaje práctico de Python, con un enfoque en operaciones avanzadas de manejo de datos utilizando Pandas. # **Sesión 3: Operaciones avanzadas en Pandas** Esta sesión cubre técnicas principales de Pandas, incluyendo joins, búsqueda de cadenas, agregación de datos y visualizaciones. ## **1. Combinación de DataFrames** En primer lugar, la combinación más básica de DataFrames es concatenando. Para ello se puede usar la función `concat()` y mediante el parámetro `axis` especificar si va a ser de manera vertical (0) u horizontal (1). ```python # Vertical (por defecto) result = pd.concat([df1, df2], axis=0) # Horizontal result = pd.concat([df1, df2], axis=1) ``` Los joins son esenciales para combinar DataFrames en base a una o más claves con `merge()`. El parámetro `how` indica cómo se hará el join (left, right, inner o outer). ```python # Inner join df_inner = pd.merge(df1, df2, on='key', how='inner') ``` ## **2. Búsqueda de cadenas de texto** Pandas permite la búsqueda dentro de series de texto usando métodos como `str.contains()`. ```python # Filtrar filas que contienen una cadena específica df[df['column'].str.contains('texto buscado')] ``` Este método es compatible con expresiones regulares para búsquedas complejas en textos. ```python # Filtrar utilizando una expresión regular df[df['column'].str.contains(r'^[A-Za-z]+$', regex=True)] ``` ## **3. Agregación de datos** Una función básica es la del recuento de ocurrencia de valores únicos dentro de una columna con `value_counts()`. ```python # Contar valores únicos df['column'].value_counts() ``` Sin embargo, Pandas también permite realizar operaciones de agregación para resumir datos a través de `groupby()`. ```python # Agregación simple por grupo grouped_data = df.groupby('group_key').sum() ``` Además, se pueden especificar varias operaciones de manera simultánea con `agg()`. ```python # Uso de agg() para múltiples operaciones df.groupby('group_key').agg({'column1': 'sum', 'column2': 'mean'}) ``` ## **4. Visualización de datos** Pandas tiene integrado Matplotlib, que permite crear una variedad de gráficos para analizar los datos visualmente de manera sencilla. ```python # Gráfico de barras df['column'].value_counts().plot(kind='bar') # Gráfico de líneas df.plot(kind='line') # Histograma df['column'].plot(kind='hist', bins=20) # Scatter plot df.plot(kind='scatter', x='column1', y='column2') # Gráfico de boxplot df.plot(kind='box') ``` --- # Información <div class="alert alert-block alert-info"> <b>Autor:</b> Wenceslao Arroyo-Machado</br> <b>Fecha de actualización:</b> 03/05/2024</br> <b>GitHub:</b> <a href="https://github.com/Wences91/teaching">https://github.com/Wences91/teaching</a> </div>