Análisis de los 25 retailers más grandes de Estados Unidos
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
df = pd.read_csv("/work/retailers.csv")
df.head()
I. Preguntas del negocio
#Ordenamos los valores
df_sorted = df.sort_values('Sales', ascending=0)
#Quitamos la compañia dominante(Walmart)
ventas = df_sorted["Sales"][1:]
#obtenemos el promedio
media_ventas = np.median(ventas)
print(f'La media de las ventas sin la compañía dominante es de ${media_ventas} millones de dolares')
#Generamos el grafico
x = df_sorted['Company'][1:]
y = df_sorted['Sales'][1:]
plt.bar(x,y)
plt.grid()
plt.axhline(media_ventas, color ="r", linestyle = '--', linewidth = 2)
plt.title('Sales Retailers')
plt.xlabel('Company')
plt.ylabel('Sales')
plt.xticks(rotation='vertical')
plt.show()
x = df_sorted['Sales']
plt.hist(x,(np.arange(start = 0, stop = 130000, step = 10000)))
plt.ylabel("Numero de empresas")
plt.xlabel('Sales')
plt.title("Histograma de las ventas de la mayoria de las companias")
plt.grid()
plt.show()
y = df['Stores']
ma = max(y)
print(ma) #Use max() para conocer cual es el valor maximo y poder hacer los bins
plt.hist(y,(np.arange(start = 0, stop = 15000, step = 1000)))
plt.ylabel("Numero de empresas")
plt.xlabel('Numero de tiendas')
plt.title("Histograma de las tiendas de las companias")
plt.grid()
plt.show()
sns.scatterplot(data=df,x='Stores',y='Sales',hue='Company', style='Company')
plt.xlabel('Stores')
plt.ylabel('Sales')
plt.title("Grafica de la ventas vs cantidad de tiendas")
plt.show()
#Se hizo con numpy porque en el primer grafico la leyenda tapa informacion
x = df['Stores']
y = df['Sales']
plt.scatter(x, y)
plt.xlabel('Stores')
plt.ylabel('Sales')
plt.title("Grafica de la ventas vs cantidad de tiendas")
plt.show()
menor = min(df['Sales'])
mayor = max(df['Sales'])
rango = mayor - menor
print(menor)
print(mayor)
print(rango)
top_5_tiendas = df.sort_values('Stores', ascending=0).head(5)
top_5_ventas = df.sort_values('Sales', ascending=0).head(5)
compa_t = set(top_5_tiendas['Company'])
compa_v = set(top_5_ventas['Company'])
inter = compa_t.intersection(compa_v)
print(inter)
sns.barplot(x='Category', y='Sales', data=df)
plt.xticks(rotation='vertical')
plt.title("Grafica de ventas vs categoria de compania")
plt.show()
sns.barplot(x='Company', y='Sales/Avg. Store',data=df)
plt.xticks(rotation='vertical')
plt.title("Grafica de las companias que mas venden en relacion a las tiendas que tienen")
plt.show
online = df[df.isnull().any(True)]
tot_on = online['Sales'].sum()
print(f'El total en ventas totalmente online es: {tot_on} Millones de dolares')
tiendas_fisicas = df.dropna()
fig, ax = plt.subplots()
ax.bar(tiendas_fisicas.Company,tiendas_fisicas.Sales)
ax.bar(online.Company,online.Sales)
plt.axhline(media_ventas, color ="r", linestyle = '--', linewidth = 2)
plt.xticks(rotation='vertical')
plt.title("Grafica comparativa de las companias que venden Online y en tiendas fisicas ")
plt.show()
df_sor = df.sort_values('Store Count Growth', ascending=0)
sns.barplot(x='Company', y='Store Count Growth', data=df_sor)
plt.xticks(rotation='vertical')
plt.title("Grafica de las companias con mayor crecimiento")
plt.show
sns.barplot(x='Category', y='Store Count Growth', data=df)
plt.xticks(rotation='vertical')
plt.title("Grafica de las categorias de companias con mas crecimiento")
plt.show()