Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
0
respuestas

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

Has recibido una nueva demanda de Zoop para generar 2 nuevos visuales, uno relacionado con el perfil de las ventas y el otro con el perfil de los clientes de una región específica. Vamos a observar las dos situaciones y construir, con la ayuda de ChatGPT, los dos gráficos solicitados:

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.

Primero, une ambos DataFrames por 'ID de cliente'. Luego, crea una nueva columna llamada 'facturacion' calculada como (precio_unitario * cantidad) + envio. Finalmente, genera un gráfico de barras que muestre la facturación total por región. Utiliza bibliotecas de Python como Pandas y Matplotlib."
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

# Los DataFrames `df_clientes` y `df_ventas` ya están cargados en el entorno.
df_merged = pd.merge(df_ventas, df_clientes, on='ID_compra', how='inner')
display(df_merged.head())
df_merged['facturacion'] = (df_merged['precio_unitario'] * df_merged['cantidad']) + df_merged['envio']
display(df_merged.head())

facturacion_por_region = df_merged.groupby('region')['facturacion'].sum().reset_index()

plt.figure(figsize=(10, 6))
sns.barplot(x='region', y='facturacion', data=facturacion_por_region, palette='viridis')
plt.title('Facturación Total de Ventas por Región')
plt.xlabel('Región')
plt.ylabel('Facturación Total')
plt.xticks(rotation=45)
plt.grid(axis='y', linestyle='--', alpha=0.7)
plt.tight_layout()
plt.show()

Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad

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.

"Utilizando los DataFrames df_clientes y df_ventas, realiza una unión por 'ID de cliente'. Filtra los datos para incluir solo los estados de 'México' y 'Puebla'.

Queremos ver cómo se compone el público por 'Sexo biológico' en estos dos estados. Genera un gráfico de columnas apiladas (stacked bar chart) donde el eje X sean los estados y las barras muestren la cantidad de personas por sexo. Personaliza el gráfico con títulos y etiquetas claros."
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

estados_interes = ['México', 'Puebla']
df_clientes_filtrado = df_clientes[df_clientes['estado'].isin(estados_interes)].copy()
display(df_clientes_filtrado.head())

composicion_sexo = df_clientes_filtrado.groupby(['estado', 'sexo_biologico']).size().reset_index(name='conteo')
composicion_sexo['porcentaje'] = composicion_sexo.groupby('estado')['conteo'].transform(lambda x: 100 * x / x.sum())
display(composicion_sexo)

plt.figure(figsize=(10, 6))
sns.barplot(x='estado', y='porcentaje', hue='sexo_biologico', data=composicion_sexo, palette='viridis')
plt.title('Composición del Público por Sexo Biológico en México y Puebla')
plt.xlabel('Estado')
plt.ylabel('Porcentaje de Clientes (%)')
plt.grid(axis='y', linestyle='--', alpha=0.7)
plt.legend(title='Sexo Biológico')
plt.tight_layout()
plt.show()

Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad