首页 > 其他分享 >淘宝母婴购物数据可视化分析

淘宝母婴购物数据可视化分析

时间:2023-06-07 10:11:05浏览次数:35  
标签:category plt grouped read 母婴 buy 可视化 淘宝 data2

数据来源于阿里天池:

淘宝母婴购物数据可视化分析_学习赛_赛题与数据_天池大赛-阿里云天池 (aliyun.com)

Ali_Mum_Baby数据集包含脱敏后抽样淘宝母婴购物数据,由淘宝网提供。

本次可视化分析的目的是对用户行为数据进行分析,使用Python、Numpy、Pandas和Matplotlib等工具完成可视化分析。

image.png image.png

先导入数据,为数据清洗做准备。

 
plt.style.use('ggplot')
plt.rcParams["font.sans-serif"] = ["SimHei"]
plt.rcParams['axes.unicode_minus']= False
pd.set_option("display.max_columns",None)

path1 = "D:/数据分析/python实战/母婴/tianchi_mum_baby.csv"
path2 = "D:/数据分析/python实战/母婴/tianchi_mum_baby_trade_history.csv"
read_data1 = pd.read_csv(path1)
read_data2 = pd.read_csv(path2)

print(read_data1.birthday.describe())

#数据预处理,设置正确的日期格式
read_data1["birthday"] =pd.to_datetime(read_data1.birthday.astype('str'))

#发现异常数据
print(read_data1.birthday.describe())
read_data1 = read_data1[read_data1["birthday"]> '2010-01-01']

# 创建新列:月份、季度、年
read_data2['month'] = read_data2['day'].dt.month
read_data2['quarter'] = read_data2['day'].dt.quarter
read_data2['year'] = read_data2['day'].dt.year

#剔除购买量异常(偏离中位数三个标准差)
read_data2 = read_data2[(read_data2.buy_mount >= 1) & (read_data2.buy_mount <= 189)]

  时间分析

"""按照月份分组,计算每月的购买人数"""
grouped = read_data2.groupby('month')['user_id'].nunique()

#绘制直方图
plt.bar(grouped.index, grouped.values)

# 设置图表标题和轴标签
plt.title('month Purchase User Count')
plt.xlabel('month')
plt.ylabel('User Count')

# 展示图表
 plt.show()

  image.png 统计每月销售数据,发现2月的购买人数,可能是收到春节假期的影响,而11月的购买人数数最多,可能是收到双11促销的影响。

 
"""按照季度分组,计算每月的购买人数"""
grouped = read_data2.groupby('quarter')['user_id'].nunique()

#绘制直方图
plt.bar(grouped.index, grouped.values)

# 设置图表标题和轴标签
plt.title('quarter Purchase User Count')
plt.xlabel('quarter')
plt.ylabel('User Count')

# 展示图表
 plt.show()

  

image.png 从季度来看,母婴用品的销售存在一定的季节性特征,三四季度的购买情况要好于一二季度,特别是第四季度。可能是年末促销活动的影响。

 
"""查看11月内每天的销售情况"""
read_data2 = read_data2[read_data2["month"]==11]
read_data2["everyday"] = read_data2["day"].dt.day
grouped = read_data2.groupby('everyday')['buy_mount'].sum()

# 绘制直方图
plt.bar(grouped.index,grouped.values)

# 设置图表标题和轴标签
plt.title('quarter Purchase User Count')
plt.xlabel('quarter')
plt.ylabel('User Count')

# 展示图表
plt.show()

  单独查看11月的销售数据,验证了双11对销售的促进作用。

产品分析

grouped = read_data2.groupby('buy_mount')['user_id'].count()
plt.bar(grouped.index,grouped.values)
lt.show()

  image.png 从购买数量上看,大多数用户的单次购买数量为一,应具体分析商品属性,考虑是否刺激用户购买更多商品。

""" 查看各大类商品的销售情况"""

category = read_data2.groupby("category_1")['buy_mount'].sum() plt.figure(figsize=(10, 6)) plt.bar(category.index.astype(str),category.values) plt.title("Sales Volumn by Category") #连接 plt.xlabel("Category_1") plt.ylabel('Sales Volumn') # #统计用户年龄 plt.show()

  image.png 从总量上看,编号28,5008168的产品销售数量较多,应该继续保持,而38、50022520、122650008的销售量较低。

""" 查看各大类商品下各子类商品的销售情况"""
category = read_data2.groupby("category_1")['category_2'].nunique()
plt.figure(figsize=(10,6))
plt.bar(category.index.astype(str),category.values)
plt.title("Son Category")                                               

plt.xlabel("Category")
plt.ylabel('Sales Volumn') #统计用户年龄
plt.show()

image.png

"""统计各类别下,子产品的平均销量"""
category_buy_mount = read_data2.groupby("category_1")['buy_mount'].sum()
son_category = read_data2.groupby("category_1")['category_2'].nunique()
avg = category_buy_mount/son_category
print(avg)
plt.bar(avg.index.astype(str),avg.values)
plt.show()

image.png 从子产品的平均销售情况看。5008168的销售数量最高,考虑到其较高的产品销售总量,说明其各子产品有较强的竞争力,相比之下28的平均销售值较低,而子产品的数量又比较高,可以考虑进行一定程度的整合优化。

"""分季度查看销售情况"""
grouped = read_data2.groupby(['year','quarter'])['buy_mount'].sum()
print(grouped)
plt.bar( [str(idx[0]) + "/Q" + str(idx[1]) for idx in grouped.index],grouped.values)
plt.show()

image.png 观察各个季度的销售情况,可以看出一年之内商品销售数量存在的季节性变化,同时,在2012年到2014年期间,商品销售数量呈现出增长趋势。

用户分析

"""合并数据"""
df = pd.merge(read_data2,read_data1)

"""统计用户性别 """
gender_counts = df["gender"].value_counts()
# 绘制饼图
labels = ["Male","Female"]
sizes = [gender_counts[0],gender_counts[1]]
plt.pie(sizes,labels=labels,autopct='%1.1f%%')
plt.title("Gender Distribution")
plt.axis('equal')
plt.show()

image.png 总体上看,用户性别大体持平,男性用户略多于女性用户,可能是父亲参与了母婴用品的购买的过程。说明在销售商品时可以针对父亲群体进行必要的信息说明和推销。

"""男宝宝消费"""
df = pd.merge(read_data2,read_data1)
df = df[df["gender"] ==0]

f_buy_amount = df.groupby("category_1")["buy_mount"].sum()
# print(f_buy_amount)
plt.pie(f_buy_amount.values,labels = f_buy_amount.index)
plt.show()

"""女宝宝消费"""
df = pd.merge(read_data2,read_data1)
df = df[df["gender"] ==0]

f_buy_amount = df.groupby("category_1")["buy_mount"].sum()
# print(f_buy_amount)
plt.pie(f_buy_amount.values,labels = f_buy_amount.index)
plt.show()

image.png image.png 可以看出男性宝宝和女性宝宝间的产品消费情况存在一定差异,在男性宝宝中,消费最多的产品大类是50008168,而在女性宝宝中,消费最多的大类是50014815,因此针对不同性别的宝宝,推销计划应该有所差异。而122650008的消费量最少,应结合产品属性做进一步分析。

GITHUB:https://github.com/zhangaynami/ayanmi/blob/aynami1/%E6%95%B0%E6%8D%AE%E5%8F%AF%E8%A7%86%E5%8C%96/%E7%94%B5%E5%95%86%E5%A9%B4%E5%84%BF%E7%94%A8%E5%93%81%E5%88%86%E6%9E%90.py
作者:aynami
链接:https://juejin.cn/spost/7241590154149642301
来源:稀土掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。  

标签:category,plt,grouped,read,母婴,buy,可视化,淘宝,data2
From: https://www.cnblogs.com/zhangzijun2001/p/17462555.html

相关文章

  • Python中TensorFlow的长短期记忆神经网络(LSTM)、指数移动平均法预测股票市场和可视化
    原文链接:http://tecdat.cn/?p=23689最近我们被客户要求撰写关于LSTM的研究报告,包括一些图形和统计输出。本文探索Python中的长短期记忆(LSTM)网络,以及如何使用它们来进行股市预测 ( 点击文末“阅读原文”获取完整代码数据******** )。在本文中,你将看到如何使用一个被称为长短时......
  • 数据分享|R语言逐步回归、方差分析anova电影市场调查问卷数据可视化|附代码数据
    全文链接:http://tecdat.cn/?p=30680最近我们被客户要求撰写关于电影市场调查问卷数据的研究报告,包括一些图形和统计输出。这是一份有关消费者对电影市场看法及建议的调查报告,我们采取了问卷调查法,其中发放问卷256份,回收有效问卷200份 ( 点击文末“阅读原文”获取完整代码数据**......
  • 智慧电网数据可视化运维云平台解决方案
    智慧电力概述智慧电力是通过采用先进的大数据、云计算、物联网、边缘计算等技术,实现生产信息与管理信息的智慧,实现人、技术、经营目标和管理方法的集成,是企业管理思想的一个新突破。智慧电厂建设具备智能化、一体化、可观测、可互动、自学习、自寻优等九大能力,可为管理者及时提供......
  • 智慧电网数据可视化运维云平台解决方案
    智慧电力概述智慧电力是通过采用先进的大数据、云计算、物联网、边缘计算等技术,实现生产信息与管理信息的智慧,实现人、技术、经营目标和管理方法的集成,是企业管理思想的一个新突破。智慧电厂建设具备智能化、一体化、可观测、可互动、自学习、自寻优等九大能力,可为管理者及时提供过......
  • Python爬虫————泉州二手房数据爬取和数据可视化
    1.选题的背景我本次的主题是泉州二手房房价的调查分析。首先通过爬虫采集链家网上所有二手房的房源数据,并对采集到的数据进行清洗;然后,对清洗后的数据进行可视化分析,探索隐藏在大量数据背后的规律;将这些房源大致分类,以对所有数据的概括总结。通过上述分析,我们可以了解到目前市面......
  • python爬虫------------旅游的地点的爬取和可视化
    选题背景我国旅游行业的极速发展,因为之前疫情原因,使得国内旅游成为新风潮,由于国内疫情控解封,使得中国成为最先开放旅游的国家,本次项目可视化就是分析国内旅游的数据,分析适合出行旅游的时间与地点信息。设计方案 1.向目标网络发送请求   2.获取数据网页源码   3.筛选......
  • 人工智能创新挑战赛:助力精准气象和海洋预测Baseline[2]:数据探索性分析(温度风场可视化)
    “AIEarth”人工智能创新挑战赛:助力精准气象和海洋预测Baseline[2]:数据探索性分析(温度风场可视化)、CNN+LSTM模型建模1.气象海洋预测-数据分析数据分析是解决一个数据挖掘任务的重要一环,通过数据分析,我们可以了解标签的分布、数据中存在的缺失值和异常值、特征与标签之间的相关......
  • 数据分享|PYTHON用决策树分类预测糖尿病和可视化实例|附代码数据
    全文下载链接:http://tecdat.cn/?p=23848最近我们被客户要求撰写关于决策树的研究报告,包括一些图形和统计输出。在本文中,决策树是对例子进行分类的一种简单表示。它是一种有监督的机器学习技术,数据根据某个参数被连续分割。决策树分析可以帮助解决分类和回归问题 ( 点击文末“阅......
  • 【Python网络爬虫课程设计】B站up主——老番茄视频数据爬取+数据可视化分析
    一、选题背景1.背景随着大数据时代的来临,网络爬虫在互联网中的地位将越来越重要。互联网中的数据是海量的,如何自动高效地获取互联网中我们感兴趣的信息并为我们所用是一个重要的问题,而爬虫技术就是为了解决这些问题而生的。对于身为数据科学与大数据技术专业的学生来说,网络......
  • 【低代码】可视化低代码产品实现基本架构
    低代码在做什么第一性原理意味着你抛弃一切,直击真相本质,然后从那里开始推理。1通过第一性原理思维方式去思考低代码,首先不管我们做什么方式进行编程,一定是为了获得一个满足我们需求的程序,低代码和传统方式的区别在于进一步降低了编程门槛,将编程变成了一种更直观更容易理解方式,并未......