# RESOLUCIÓN ANALÍTICA
my_df2 = my_df.groupby('article_name').sum()
por_cant = my_df2.sort_values('quantity',ascending=False)
print(por_cant['quantity'].head(1))
# CLASE DE CONSULTA 11/7
# para obtener sólo el nombre del artículo
#print(por_cant['quantity'].head(1).index.tolist()[0])
article_name
HDD 413
Name: quantity, dtype: int64
# RESOLUCIÓN GRÁFICA
sns.displot(my_df, x='article_name', color='darkturquoise')
plt.title('Articulo mas vendido')
plt.xlabel('Articulo')
plt.ylabel('Cantidad de Unidades')
plt.xticks(rotation=90)
plt.show()
# RESOLUCIÓN ANALÍTICA
my_df3 =(my_df.groupby('article_name').sum()).sort_values('total_amount', ascending=False).head(5)
print(my_df3['total_amount'])
article_name
Full Pc 538335.93
Notebook 251000.00
Smartphone 152250.00
Chair 69477.48
Tablet 48620.00
Name: total_amount, dtype: float64
# RESOLUCIÓN GRÁFICA
# OJO: No puedo hacer un análisis comparativo ni poner porcentajes porque
# no están todos los artículos en este df. Sólo puse los top 5
plt.pie(x=my_df3['total_amount'], labels=my_df3.index, colors=['aqua', 'darkturquoise','c', 'darkcyan','teal'])
plt.title("Los 5 articulos que mas ingresos generan")
plt.show()
# RESOLUCIÓN ANALÍTICA
my_df4 = (my_df.groupby('seller_name').sum()).sort_values('total_amount', ascending=False)
print(my_df4[['quantity']+['total_amount']])
quantity total_amount
seller_name
Janel O'Curran 703 192832.47
Brockie Patience 441 142709.88
Oliviero Charkham 555 141329.76
Vasily Danilyuk 521 129157.55
Daisie Slograve 554 120520.11
Aveline Swanwick 629 118874.33
Arnold Kilkenny 583 94552.04
Kati Innot 512 83704.62
Jase Doy 582 80628.31
Ewell Peres 496 78144.32
Onida Cosely 535 77373.37
Milly Christoffe 442 61733.69
Tobin Roselli 519 56984.42
Cornie Wynrehame 523 52253.57
Cirilo Grandham 470 45009.40
# RESOLUCIÓN GRÁFICA
plt.bar(my_df4.index, my_df4['total_amount'],color=['darkturquoise', 'darkcyan'])
plt.xticks(rotation=90)
plt.title("Ventas por vendedor")
plt.xlabel('Vendedor')
plt.ylabel('Monto total')
plt.show()
# RESOLUCIÓN ANALÍTICA
my_df5 = (my_df.groupby('week').sum()).sort_values('total_amount',ascending=False)
print(my_df5)
quantity total_amount
week
1 2449 507458.81
2 2444 415364.44
3 2114 329140.03
4 1058 223844.56
# RESOLUCIÓN GRÁFICA
plt.bar(my_df5.index,my_df5['total_amount'], color=['aqua', 'darkturquoise','c', 'darkcyan', 'teal'])
plt.title("Ventas por semana")
plt.xlabel('Semana')
plt.ylabel('Monto de ventas')
plt.show()
# RESOLUCIÓN ANALITICA
my_df6 = (my_df.groupby('country_name').sum()).sort_values('total_amount',ascending= False).head(5)
print(my_df6)
week quantity total_amount
country_name
Brazil 717 2515 441271.85
Argentina 241 947 205832.78
Colombia 230 881 177514.29
Peru 266 1027 161421.12
Mexico 237 846 138619.99
# RESOLUCIÓN GRAFICA
plt.pie(x=my_df6['total_amount'], labels=my_df6.index, colors=['aqua', 'darkturquoise','c', 'darkcyan','teal'])
centre_circle=plt.Circle((0,0),0.4,fc='white')
fig=plt.gcf()
fig.gca().add_artist(centre_circle)
plt.title('Los 5 paises con mayor monto de venta')
plt.show()
#RESOLUCION ANALITICA
my_dfHDD = (my_df[my_df['article_name'] == 'HDD']).sort_values('seller_name', ascending=False)
HDDsum = my_dfHDD.groupby('seller_name').sum()
print(HDDsum)
week quantity total_amount
seller_name
Arnold Kilkenny 6 29 1583.98
Aveline Swanwick 6 29 1583.98
Brockie Patience 5 15 819.30
Cirilo Grandham 1 13 710.06
Cornie Wynrehame 16 43 2348.66
Daisie Slograve 7 17 928.54
Ewell Peres 1 13 710.06
Janel O'Curran 15 75 4096.50
Jase Doy 15 48 2621.76
Kati Innot 4 4 218.48
Milly Christoffe 5 33 1802.46
Oliviero Charkham 8 26 1420.12
Onida Cosely 2 14 764.68
Tobin Roselli 4 19 1037.78
Vasily Danilyuk 18 35 1911.70
#RESOLUCION GRAFICA
plt.bar(HDDsum.index,HDDsum['quantity'],color=['darkturquoise', 'darkcyan'])
plt.title('Ventas de HDD')
plt.xlabel('Vendedor')
plt.ylabel('Cantidad unidades')
plt.xticks(rotation=90)
plt.show()
#Resolución Analítica
semanal = my_df.groupby(['week', 'article_name']).sum()
cant = semanal.sort_values('quantity',ascending=False)
print(cant['quantity'].head(3))
week article_name
2 HDD 158
1 SDD 153
3 Tablet 148
Name: quantity, dtype: int64
sns.scatterplot(x='article_name', y='quantity', hue='week', data=cant, palette="Paired")
plt.title('Articulo mas vendido por semana')
plt.xticks(rotation=90)
plt.xlabel('Artículos')
plt.ylabel('Cantidad')
plt.show()