Descripción
En este reto, aprenderás a analizar datos financieros y a realizar visualizaciones avanzadas con Python y la biblioteca matplotlib. Utilizarás un conjunto de datos con precios históricos de criptomonedas para realizar un análisis exploratorio, calcular estadísticas descriptivas y generar gráficos detallados como gráficos de líneas, boxplots, gráficos de violín, barras apiladas, gráficos de dispersión y un heatmap de correlaciones. El objetivo es desarrollar tus habilidades en la visualización de datos financieros y obtener insights útiles sobre el comportamiento del mercado de criptomonedas.
1.- Configurar el entorno de trabajo:
- Abre Visual Studio Code y crea un nuevo proyecto.
- Importa las bibliotecas necesarias como:
pandas,matplotlib, etc. Ya están instaladas por lo que no necesitas instalarlas. - Crea un archivo
crypto_market_analysis.ipynbdonde desarrollarás el análisis avanzado del proyecto.
2.- Carga y limpieza del conjunto de datos:
- Carga el archivo
cryptocurrency_data.csvutilizando pandas. El archivo contiene los precios históricos de las principales criptomonedas. Los datos han sido obtenidos del conjunto de datos "Top 50 Cryptocurrency Historical Prices". - Dado que estás trabajando en Visual Studio Code en un entorno web, es necesario utilizar rutas absolutas para cargar los archivos. Asegúrate de que la ruta absoluta a tu archivo de datos sea correcta, tal como se muestra en el siguiente ejemplo:
/workspace/cryptocurrency_data.csv - Elimina duplicados y trata los valores nulos en las columnas:
- Imputa los valores faltantes en las columnas numéricas (
Price,Vol.) usando la mediana. - Asigna
'Unknown'a las criptomonedas no identificadas en la columnaCurrency_Name.
- Imputa los valores faltantes en las columnas numéricas (
3.- Conversión de columna Date:
Guarda tu progreso
Inicia sesión para no perder tu progreso y accede a miles de tutoriales, ejercicios prácticos y nuestro asistente de IA.
Más de 25.000 desarrolladores ya confían en CertiDevs
- Convierte la columna
Datea formatodatetimepara facilitar el análisis temporal.
4.- Análisis descriptivo de los datos:
- Realiza un análisis descriptivo general utilizando
.describe()para obtener estadísticas como la media, mediana y desviación estándar de las columnas de precios y volumen. - Usa
groupbypara calcular las estadísticas descriptivas por criptomoneda (Bitcoin, Ethereum, etc.).
5.- Visualización de datos avanzada:
- Crea las siguientes visualizaciones utilizando matplotlib:
- Gráfico de líneas mostrando el crecimiento de precios de Bitcoin a lo largo del tiempo.
- Filtra el conjunto de datos para que solo contenga información de Bitcoin.
- Utiliza
plt.plot()para generar un gráfico de líneas.
- Boxplot comparando los precios de Bitcoin, Ethereum, y Aave sin valores atípicos.
- Filtra el conjunto de datos para que solo contenga Bitcoin, Ethereum, y Aave.
- Utiliza
plt.boxplot()para generar el gráfico, y asegúrate de que los valores atípicos estén desactivados, puedes utilizarshowfliers=Falsepara desactivarlos.
- Gráfico de violín para visualizar la distribución de los precios de Ethereum.
- Filtra el conjunto de datos para que solo contenga información de Ethereum.
- Utiliza
plt.violinplot()para generar el gráfico y asegúrate de incluir la media conshowmeans=True.
- Gráfico de barras apiladas para mostrar el volumen de transacciones de las criptomonedas más importantes.
- Agrupa los datos por fecha (
Date) y por criptomoneda (Currency_Name), y suma los volúmenes (Vol.) de transacciones para cada fecha y criptomoneda. - Usa
df.groupby()para realizar la agregación yunstack()para organizar los datos de forma que puedas graficarlos. - Genera un gráfico de barras apiladas con
df.plot(kind='bar', stacked=True).
- Agrupa los datos por fecha (
- Gráfico de dispersión para mostrar los precios de las criptomonedas a lo largo del tiempo.
- Asigna colores específicos a cada criptomoneda (Bitcoin: azul, Ethereum: verde, Aave: rojo).
- Usa
plt.scatter()para generar un gráfico de dispersión donde el tamaño de los puntos dependa del precio de la criptomoneda.
- Gráfico de líneas comparando los precios de Bitcoin y Ethereum en un solo gráfico.
- Filtra los datos para Bitcoin y Ethereum.
- Usa
plt.plot()para generar dos líneas, una para Bitcoin y otra para Ethereum.
- Heatmap que muestre la correlación entre los precios de varias criptomonedas.
- Calcula la correlación entre los precios de las criptomonedas usando
.corr(). - Utiliza
plt.imshow()para generar el heatmap de las correlaciones, asegurándote de elegir una paleta de colores comocoolwarmpara mostrar la variación de correlación. - Agrega una barra de color (
plt.colorbar()) que represente los niveles de correlación.
- Calcula la correlación entre los precios de las criptomonedas usando
- Gráfico de líneas mostrando el crecimiento de precios de Bitcoin a lo largo del tiempo.
Solución al ejercicio de programación en Matplotlib
¡Desbloquea la solución completa!
Completa el ejercicio de programación en Matplotlib para acceder a la solución paso a paso, explicaciones detalladas y mejores prácticas.
Practica con ejercicios de programación en Matplotlib
Mejora tus habilidades con cientos de ejercicios de práctica, recibe retroalimentación instantánea y obtén tu certificación cuando estés listo.
Asistente de IA
Aprende de tus errores
Progreso
Mide tu avance
Certificación
Valida tus habilidades
Únete a miles de desarrolladores mejorando sus habilidades en Matplotlib