优衣库销售数据分析
1、需求和数据加载
数据:不同城市优衣库门店的销售数据,
需求:
- 不同产品的销售方式,顾客喜欢的购买方式(线上or线下)
- 销售额与成本之间的关系
- 购买时间偏好
import pandas as pd
uniqlo = pd.read_csv('./data/uniqlo.csv')
uniqlo.head()
uniqlo.info()
uniqlo.shape
uniqlo.describe()
看数据查看问题:revenue最小值出现负值
uniqlo[uniqlo.revenue<1] #销售金额小于1的记录
2、不同种类产品的销售情况
2.1 不同产品的销售情况
对列A分组,不同组的列B求和值,并降序排列
date.groupby(‘列A’)[‘列B’].sum().sort_values(ascending=False)
#不同种类的订单数
uniqlo.groupby('product')['order'].sum().sort_values(ascending=False)
#不同种类的销售数
uniqlo.groupby('product')['quant'].sum().sort_values(ascending=False)
做列A和列B联合的不同种类,的列C数量
date.pivot_table(values = ‘列C’,index=‘列A’,columns=‘列B’,aggfunc = ‘sum’,)–输出是多行多列的表
排序:sort_values()默认升序
#不同城市,不同种类的销售量
uniqlo.pivot_table(index='product',columns='city',values='quant',aggfunc='sum').sort_values('上海',ascending=False)#按上海降序排列
商品类别后,再城市,再加了一个维度(线上/线下):
#对城市拆解后,再进一步按线上线下拆解
uniqlo.pivot_table(index='product',columns=['city','channel'],values='quant',aggfunc='sum')
3、用户的消费方式(线上or线下)
1,统计使用不同消费方式的订单数量
uniqlo.groupby('channel')['order'].sum()
结论:总体上,线下比线上多
#进一步按照城市拆解
uniqlo.pivot_table(index='city',columns='channel',values='order',aggfunc='sum').sort_values('线上',ascending=False)
2,同样可以看一下销量(商品数)
uniqlo.pivot_table(index='city',columns='channel',values='quant',aggfunc='sum').sort_values('线上',ascending=False)
4、用户的消费习惯(周间or周末)
#看一下周末,周间的整体情况
uniqlo.wkd_ind.value_counts()
结论:整体上看,周末的销售记录要比周间多
#查看不同城市,周末间的情况
wkd_sales = uniqlo.pivot_table(index='wkd_ind',columns='city',values='quant',aggfunc='sum')
因为周间有5天,周末2天,可以考虑求一下平均
#计算每天的销售额
week_sales.loc['weekday_avg',:] = week_sales.loc['weekday',:]/5
week_sales.loc['weekend_avg',:] = week_sales.loc['weekend',:]/2
week_sales
结论:取平均后,还是周末比较多
5、销售额和成本之间的关系
1,销售额revenue和成本unit_cost之间的关系–计算相关系数corr
uniqlo[['revenue','unit_cost']].corr()
0.14—关系不太大
问题:应该研究单位销售额和单位成本之间的关系文章来源:https://www.toymoban.com/news/detail-476811.html
#筛选出销售额大于1的数据
uniqlo2 = uniqlo[uniqlo.revenue >1]
uniqlo2.head()
#计算单位商品的销售额
uniqlo2['rev_per_goods'] = uniqlo2['revenue']/uniqlo2['quant']
uniqlo2.head()
#再计算相关系数
uniqlo2[['revenue','rev_per_goods']].corr()
0.5了,相关性还行
热力图—sns.heatmap(相关系数的计算)文章来源地址https://www.toymoban.com/news/detail-476811.html
#对应热力图
sns.heatmap(uniqlo2[['unit_cost','rev_per_goods']].corr())
到了这里,关于数据分析实战项目2:优衣库销售数据分析的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!