Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

Desafío: generando visualizaciones con respecto a la localización

Desafío 1:

Construye y ejecuta un prompt en ChatGPT para generar, a partir de nuestra base de datos, un visual que muestre el facturación de las ventas por región. Recuerda que aquí la facturación se calcula multiplicando el valor unitario por la cantidad comprada y sumando el costo de envío.

Prompt Reto 1

Tengo un DataFrame llamado df y quiero generar un gráfico que muestre la facturación total por región.

En df, tengo las columnas precio_unitario, cantidad, envio y region. La facturación debe calcularse como: precio_unitario * cantidad + envio.

¿Puedes ayudarme a agrupar los datos por región, sumar la facturación y mostrarlo en un gráfico de columnas?

Codigo

import pandas as pd
import matplotlib.pyplot as plt

# Crear columna de facturación
df['facturacion'] = (df['precio_unitario'] * df['cantidad']) + df['envio']

# Agrupar por región y sumar la facturación
facturacion_por_region = df.groupby('region')['facturacion'].sum().reset_index()

# Ordenar de mayor a menor
facturacion_por_region = facturacion_por_region.sort_values(by='facturacion', ascending=False)

# Crear gráfico de barras
plt.figure(figsize=(10,6))
plt.bar(facturacion_por_region['region'], facturacion_por_region['facturacion'], color='skyblue')
plt.title('Facturación Total por Región')
plt.xlabel('Región')
plt.ylabel('Facturación')
plt.xticks(rotation=45)
plt.tight_layout()
plt.show()

Desafío 2:

Zoop quiere realizar una campaña en los estados de México y Puebla, por lo que necesita conocer el perfil de su público según el sexo biológico. Construye y ejecuta un prompt en ChatGPT para generar, a partir de nuestra base de datos, un visual que muestre la composición del público por sexo biológico en los estados de México y Puebla. Recuerda pedir que agrupe o apile los datos para la presentación.

Prompt Reto 2 Quiero crear un gráfico de columnas apiladas que muestre la cantidad de personas por sexo biológico (sexo_biologico) en los estados de México y Puebla, usando mi DataFrame llamado df.

En el DataFrame tengo una columna llamada estado con el nombre del estado, y otra llamada sexo_biologico.

¿Puedes ayudarme a filtrar solo esos dos estados y mostrar los datos agrupados en un gráfico apilado?

Codigo

import seaborn as sns

# Filtrar solo los estados México y Puebla
df_estados = df[df['estado'].isin(['México', 'Puebla'])]

# Crear tabla de conteo agrupada por estado y sexo biológico
conteo_sexo_estado = df_estados.groupby(['estado', 'sexo_biologico']).size().unstack()

# Crear gráfico de columnas apiladas
conteo_sexo_estado.plot(kind='bar', stacked=True, figsize=(8,6), colormap='Set2')
plt.title('Composición por Sexo Biológico en México y Puebla')
plt.xlabel('Estado')
plt.ylabel('Cantidad de Personas')
plt.xticks(rotation=0)
plt.legend(title='Sexo Biológico')
plt.tight_layout()
plt.show()
1 respuesta

Hola , espero que estés muy bien.

Felicitaciones por tu aprendizaje. Estamos priorizando el foro para postear dudas, así optimizamos el tiempo de respuesta para ustedes.

Para no dejar de compartir los códigos, actividades y ejercicios que realizas, creamos un canal en Discord (#compartatucodigo) donde puedes compartirlos, dar y sugerir mejoras con el resto de tus compañeros.

Un saludo.

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios