NumPy
Fundamentos para Análisis de Datos en NumPy y Pandas
Dimensiones en NumPy y Pandas: De Escalares a Tensors
Arrays en NumPy
Introducción al álgebra lineal con NumPy
Indexación y Slicing
Broadcasting y Operaciones Lógicas en NumPy
Elementos Únicos y sus Conteos: Copias y Vistas
Transformación de Arrays: Reshape y Manipulación
Caso Práctico de Análisis de Datos
Cálculos Matriciales en NumPy
Ejercicios en NumPy
Pandas
Pandas para Manipulación de Datos
Creación de Dataframes en Pandas
Estructuras de Datos en Pandas y Funciones
Uso de iloc y loc en Pandas
Manejo de Datos Faltantes en Pandas
Creación y Manipulación de Columnas en Pandas
Agrupaciones con groupby
Filtrado de datos con condiciones en Pandas
Reestructuración de datos: Pivot y Reshape en Pandas
Fusión de DataFrames en Pandas
Manejo de Series Temporales en Pandas
Matplotlib
Introducción a Matplotlib gráfico de líneas y dispersión
Personalización de Gráficos en Matplotlib
Gráficos de Barras y Diagramas de Pastel
Gráficos de Histograma y Boxplot para distribuciones
Series de tiempo y manejo de fechas con Matplotlib
Subplots y Layouts Avanzados
Proyecto de Análisis de Datos de Retail
Caso de Estudio (Parte I). Limpieza de datos
Caso de Estudio (Parte II). Creación de columnas
Caso de Estudio (Parte III). Graficación y análisis de resultados
Proyecto Final: Creación de Portafolio de Análisis de Datos
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
La capacidad de visualizar datos temporales es fundamental para cualquier analista que desee identificar patrones, tendencias o anomalías. A través de gráficos de líneas es posible obtener una comprensión clara de la evolución de los datos sobre el tiempo. En este artículo, exploraremos cómo utilizar librerías populares de Python como NumPy, Pandas, y Matplotlib para crear representaciones visuales efectivas de series temporales.
Para empezar con la visualización de datos temporales, es conveniente tener familiaridad con algunas herramientas de Python:
Este conjunto de herramientas permite generar, manipular y visualizar fácilmente datos temporales.
El camino hacia una buena visualización comienza con la creación de un conjunto de datos y un gráfico de líneas básico. Vamos a crear un ejemplo simple utilizando ficción de ventas:
Primero, generamos un conjunto de fechas y valores aleatorios para simular los datos de ventas a lo largo del tiempo:
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
# Genera fechas y valores aleatorios
dates = pd.date_range(start='2023-01-01', periods=100, freq='D')
values = np.random.randint(1000, 5000, size=100)
# Crear DataFrame
data = pd.DataFrame({'Fecha': dates, 'Ventas': values})
Con esto en mano, podemos comenzar a graficar:
# Crear gráfico de líneas
plt.figure(figsize=(12, 6))
plt.plot(data['Fecha'], data['Ventas'], color='g')
plt.xticks(rotation=45)
plt.title('Serie Temporal de Ventas')
plt.xlabel('Fecha')
plt.ylabel('Ventas')
plt.show()
Para mejorar la legibilidad del gráfico, es necesario ajustar el formato de las fechas. Podemos hacerlo rotando los textos o dándole un formato específico para que las fechas se muestren en meses de forma escrita:
import matplotlib.dates as mdates
# Ajustar formato de fechas
plt.gca().xaxis.set_major_formatter(mdates.DateFormatter('%b %Y'))
plt.xticks(rotation=45)
En este caso, '%b %Y'
se utiliza para mostrar el mes en forma abreviada junto al año.
Una vez que hemos cubierto lo básico, podemos aplicar estos conceptos a diferentes contextos más avanzados para mostrar ventas mensuales o analizar patrones estacionales, por ejemplo. Aquí te dejo un ejemplo focalizado en ventas mensuales:
# Generación de datos mensuales
dates = pd.date_range(start='2023-01-01', periods=12, freq='M')
sales = np.random.randint(1000, 5000, size=12)
# Crear DataFrame mensual
monthly_data = pd.DataFrame({'Fecha': dates, 'Ventas': sales})
# Crear gráfico con leyenda y estilo personalizado
plt.figure(figsize=(10, 5))
plt.plot(monthly_data['Fecha'], monthly_data['Ventas'], marker='o', linestyle='-', label='Ventas Mensuales')
plt.xticks(rotation=45)
plt.title('Análisis de Ventas Mensuales')
plt.xlabel('Fecha')
plt.ylabel('Ventas')
plt.legend()
plt.tight_layout()
plt.show()
Esta práctica no sólo cohesiona el entendimiento de las series temporales, sino que también fortalece las habilidades de análisis de datos de cualquiera que busque predecir tendencias futuras. Recuerda interactuar con tus propias variables y configuraciones para maximizar el aprendizaje y la adaptación según tus necesidades analíticas. ¡Sigue practicando y explorando el poderoso mundo de las series temporales!
Aportes 20
Preguntas 0
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?