淘宝天猫玩具销售数据可视化

目录

  • 背景描述
  • 数据说明
  • 数据来源
    • 1. 导入模块
    • 2. 乐高淘宝数据分析及其可视化
      • 2.1 乐高淘宝数据概览
      • 2.2 乐高淘宝数据处理
      • 2.3 乐高销量排名淘宝店铺Top50
      • 2.4 乐高产地数量排名top50
      • 2.5 天猫乐高价格分布
      • 2.6 不同价格区间的销售额整体表现分布
      • 2.7 淘宝乐高标题词云图
    • 3. 乐高天猫旗舰店数据分析及其可视化
      • 3.1 乐高天猫旗舰店数据概览
      • 3.2 乐高天猫旗舰店数据处理
      • 3.3 乐高旗舰店月销量商品top50
      • 3.4 乐高旗舰店不同价格区间商品数量分布
      • 3.5 乐高旗舰店不同价格区间的销售额整体表现
      • 3.6 乐高旗舰店商品标题词云图
  • 附录

背景描述

在当前的电子商务环境中,淘宝作为中国最大的在线购物平台之一,对于各类商品的销售情况具有重要的参考价值。乐高作为一种深受消费者喜爱的创意玩具,其在淘宝上的销售情况自然也备受关注。为了更好地了解乐高商品在淘宝上的销售状况,本分析将对销售乐高的店铺及其乐高产品、销量等相关信息进行深入的探讨。

数据说明

为了确保分析的准确性和全面性,我们采用了包括多个方面的数据集。首先,我们收集了销售乐高的店铺信息,这包括但不限于店铺的规模、信誉、经营时间等重要因素,这些因素都可能影响到乐高产品的销售情况。其次,我们也关注了乐高的种类产品,因为不同种类的乐高产品可能会受到消费者的不同欢迎程度,从而影响其销售情况。最后,我们还考虑了销售省份的信息,因为不同地区的消费者可能对乐高产品的需求存在差异。

数据来源

我们的数据主要来源于淘宝和天猫这两个大型电商平台。淘宝作为中国最大的C2C电商平台,其上的商品种类繁多,销售数据丰富,能够为我们提供大量的原始数据。而天猫则主要是B2C模式,其上的商家大多是品牌商或者授权经销商,因此,从天猫获取的数据可以为我们提供更专业、更权威的信息。通过对这两个平台的数据进行分析,我们可以更全面、更准确地了解乐高商品在淘宝上的销售情况。

数据集下载

乐高淘宝数据.csv
天猫乐高旗舰店数据.csv
乐高天猫数据概述.csv

1. 导入模块

在这里插入图片描述

2. 乐高淘宝数据分析及其可视化

2.1 乐高淘宝数据概览

在这里插入图片描述

在这里插入图片描述

2.2 乐高淘宝数据处理

在这里插入图片描述

在这里插入图片描述

2.3 乐高销量排名淘宝店铺Top50

使用Python的Pandas和Plotly库来处理和可视化数据。首先,从名为df_tb的数据框中按照’shop_name’列进行分组,并对每个组中的’purchase_num’列求和,然后按降序排序,并取前50个结果。
在这里插入图片描述

2.4 乐高产地数量排名top50

使用Plotly的px.bar函数创建一个条形图,其中x轴是地区,y轴是店铺统计数,颜色也根据店铺统计数来设置
在这里插入图片描述

2.5 天猫乐高价格分布

定义了价格区间和对应的标签,然后使用pandas的cut函数将价格分为不同的区间,并计算每个区间的数量。
在这里插入图片描述

在这里插入图片描述

2.6 不同价格区间的销售额整体表现分布

在这里插入图片描述

在这里插入图片描述

2.7 淘宝乐高标题词云图

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3. 乐高天猫旗舰店数据分析及其可视化

3.1 乐高天猫旗舰店数据概览

在这里插入图片描述

3.2 乐高天猫旗舰店数据处理

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

3.3 乐高旗舰店月销量商品top50

在这里插入图片描述

3.4 乐高旗舰店不同价格区间商品数量分布

在这里插入图片描述
在这里插入图片描述

3.5 乐高旗舰店不同价格区间的销售额整体表现

在这里插入图片描述

3.6 乐高旗舰店商品标题词云图

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


附录

1. 导入模块

import numpy as np
import pandas as pd
import plotly.graph_objects as go
import plotly.express as px
import jieba
from stylecloud import gen_stylecloud
from IPython.display import Image

2. 乐高淘宝数据分析及其可视化
2.1 乐高淘宝数据概览

df_tb =pd.read_csv('乐高淘宝数据.csv')
df_tb.head()

print("——" * 10)
print('数据集存在重复值个数:')
print(df_tb.duplicated().sum())
print("——" * 10)
print('数据集缺失值情况:')
print(df_tb.isna().sum())
print("——" * 10)
print('数据集各字段类型:')
print(df_tb.dtypes)
print("——" * 10)
print('数据总体概览:')
print(df_tb.info())

2.2 乐高淘宝数据处理

# 去除重复值
df_tb.drop_duplicates(inplace=True) 
# 删除购买人数为空的记录 
df_tb = df_tb[df_tb['purchase_num'].str.contains('人付款')] 

# 重置索引 
df_tb = df_tb.reset_index(drop=True)
df_tb.info()

# purchase_num处理 
df_tb['purchase_num'] = df_tb['purchase_num'].str.extract('(\d+)').astype('int')

# 计算销售额 
df_tb['sales_volume'] = df_tb['price'] * df_tb['purchase_num']

#location
df_tb['province'] = df_tb['location'].str.split(' ').str[0]
df_tb.head(5) 

2.3 乐高销量排名淘宝店铺Top50

shop_top100 = df_tb.groupby('shop_name')['purchase_num'].sum().sort_values(ascending=False).reset_index()[:50]

px.bar(shop_top100,  # 上面指定的数据
       title="乐高销量排名淘宝店铺Top50",
       template="plotly_white",  # 分别主题设置为:plotly、plotly_dark
       x="shop_name",  # 横坐标
       y="purchase_num",  # 纵坐标
       color="purchase_num",
      labels={"shop_name": "店铺名称", "purchase_num": "销量"})  # 颜色取值

2.4 乐高产地数量排名top50

province_top50 = df_tb.province.value_counts().reset_index()[:50]


px.bar(province_top50,  # 上面指定的数据
       title="乐高产地数量排名top50",
       template="plotly_white",  # 分别主题设置为:plotly、plotly_dark
       x="index",  # 横坐标
       y="province",  # 纵坐标
       color="province",
      labels={"index": "地区", "province": "店铺统计数"})  # 颜色取值

2.5 天猫乐高价格分布

cut_bins = [0,50,100,200,300,500,1000,8888]  
cut_labels = ['0~50元', '50~100元', '100~200元', '200~300元', '300~500元', '500~1000元', '1000元以上']

price_cut = pd.cut(df_tb['price'],bins=cut_bins,labels=cut_labels)
price_num = price_cut.value_counts().reset_index()


fig = px.pie(price_num,
             names="index",
             values="price",
             color="price",
             hole=0.3,   # 设置中间空心圆的比例:0-1之间
             labels={"index": "价格区间", "price": "价格数量"}
            )

fig.update_layout(
    title={   # 设置整个标题的名称和位置
        "text":"天猫乐高价格分布",
        "y":0.96,  # y轴数值
        "x":0.5,  # x轴数值
        "xanchor":"center",  # x、y轴相对位置
        "yanchor":"top"  
    }
)
fig.update_traces(
 textposition='inside',
    textinfo='percent+value+label',
    textfont_size=20,
    marker=dict(
                line=dict(color='#000000',
                          width=1)))
fig.show()

2.6 不同价格区间的销售额整体表现分布

df_tb['price_cut'] = price_cut 

cut_purchase = df_tb.groupby('price_cut')['sales_volume'].sum().reset_index()


fig = px.pie(cut_purchase,
             names="price_cut",
             values="sales_volume",
             color="sales_volume",
             hole=0.3,   # 设置中间空心圆的比例:0-1之间
             labels={"price_cut": "价格区间", "sales_volume": "销售额"}
            )

fig.update_layout(
    title={   # 设置整个标题的名称和位置
        "text":"不同价格区间的销售额整体表现分布",
        "y":0.96,  # y轴数值
        "x":0.5,  # x轴数值
        "xanchor":"center",  # x、y轴相对位置
        "yanchor":"top"  
    }
)
fig.update_traces(
 textposition='inside',
    textinfo='percent+value+label',
    textfont_size=20,
    marker=dict(
                line=dict(color='#000000',
                          width=1)))
fig.show()

2.7 淘宝乐高标题词云图

def get_cut_words(content_series):
    # 读入停用词表
    stop_words = [] 
    
    # 添加关键词
    my_words = ['乐高', '悟空小侠', '大颗粒', '小颗粒'] 
    for i in my_words:
        jieba.add_word(i) 

    # 自定义停用词
    my_stop_words = []
    stop_words.extend(my_stop_words)               

    # 分词
    word_num = jieba.lcut(content_series.str.cat(sep='。'), cut_all=False)

    # 条件筛选
    word_num_selected = [i for i in word_num if i not in stop_words and len(i)>=2]
    
    return word_num_selected
text = get_cut_words(content_series=df_tb['goods_name']) 
text[:10]
# 绘制词云图
gen_stylecloud(
    text=' '.join(text),
    collocations=False,
    font_path=r'‪C:\Windows\Fonts\msyh.ttc',
    icon_name='fas fa-plane',
    size = 768,
    output_name='淘宝乐高标题词云图.png'
)
Image(filename='淘宝乐高标题词云图.png')

3. 乐高天猫旗舰店数据分析及其可视化
3.1 乐高天猫旗舰店数据概览

df_tm = pd.read_csv('天猫乐高旗舰店数据.csv')
df_tm.head()

3.2 乐高天猫旗舰店数据处理

df_tm.drop_duplicates(inplace=True)

# 价格处理
def transform_price(x):
    if '-' in x:
        return (float(x.split('-')[1]) - float(x.split('-')[0]))/2
    else:
        return x 

# 价格转换
df_tm['price'] = df_tm.price.apply(lambda x:transform_price(x)).astype('float')

# 使用平均值填充缺失值
df_tm['sales_num'] = df_tm.sales_num.replace('无',200)

#转换类型
df_tm['sales_num'] = df_tm.sales_num.astype('int')


df_tm['title'] = df_tm.title.str.replace('乐高旗舰店|官网|2020年', '')

#销售额
df_tm['sales_volume'] = df_tm['sales_num'] * df_tm['price']


rank_top50 = df_tm.groupby('title')['sales_num'].sum().sort_values(ascending=False).reset_index()[:50]

3.3 乐高旗舰店月销量商品top50

px.bar(rank_top50,  # 上面指定的数据
       title="乐高旗舰店月销量商品top50",
       template="plotly_white",  # 分别主题设置为:plotly、plotly_dark
       x="title",  # 横坐标
       y="sales_num",  # 纵坐标
       color="sales_num",
        height=1000,  # 自定义高度为600
      labels={"title": "商品", "sales_num": "销量"})  # 颜色取值

3.4 乐高旗舰店不同价格区间商品数量分布

cut_bins = [0,200,400,600,800,1000,2000,9469]
cut_labels = ['0~50元', '50~100元', '100~200元', '200~300元', '300~500元', '500~1000元', '1000元以上']

price_cut = pd.cut(df_tm['price'],bins=cut_bins,labels=cut_labels)
price_num = price_cut.value_counts().reset_index()




# 创建图表
fig = px.pie(
    price_num,
    names="index",
    values="price",
    color="price",
    hole=0.3,
    labels={"index": "价格区间", "price": "价格数量"},
    template="ggplot2"  # 使用ggplot2样式模板
)

# 修改布局
fig.update_layout(
    title={
        "text": "乐高旗舰店不同价格区间商品数量分布",
        "y": 0.96,
        "x": 0.5,
        "xanchor": "center",
        "yanchor": "top"
    },
    legend=dict(
        yanchor="top",
        y=0.9,
        xanchor="left",
        x=0.8,
        orientation="v"
    )
)


# 自定义颜色方案
colors = ['#FF9999', '#66B2FF', '#99FF99', '#FFCC99']
fig.update_traces(textposition='inside',
    textinfo='percent+value+label',
    textfont_size=20,marker=dict(colors=colors))

# 显示图表
fig.show()

3.5 乐高旗舰店不同价格区间的销售额整体表现

# 添加列
df_tm['price_cut'] = price_cut
cut_purchase = df_tm.groupby('price_cut')['sales_volume'].sum().reset_index()

# 创建图表
fig = px.pie(
    cut_purchase,
    names="price_cut",
    values="sales_volume",
    color="sales_volume",
    hole=0.3,
    labels={"price_cut": "价格区间", "sales_volume": "销售额"},
    template="ggplot2"  # 使用ggplot2样式模板
)

# 修改布局
fig.update_layout(
    title={
        "text": "乐高旗舰店不同价格区间的销售额整体表现",
        "y": 0.96,
        "x": 0.5,
        "xanchor": "center",
        "yanchor": "top"
    },
    legend=dict(
        yanchor="top",
        y=0.9,
        xanchor="left",
        x=0.8,
        orientation="v"
    )
)


# 自定义颜色方案
colors = ['#FF9999', '#66B2FF', '#99FF99', '#FFCC99']
fig.update_traces(textposition='inside',
    textinfo='percent+value+label',
    textfont_size=20,marker=dict(colors=colors))

# 显示图表
fig.show()

3.6 乐高旗舰店商品标题词云图

text = get_cut_words(content_series=df_tm['title'])
text[:6]

gen_stylecloud(
    text=' '.join(text),
    collocations=False,
    font_path=r'‪C:\Windows\Fonts\msyh.ttc',
    icon_name='fas fa-gamepad',
    size=768,
    output_name='乐高旗舰店商品标题词云图.png'
)
Image(filename='乐高旗舰店商品标题词云图.png')

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/547944.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

06-java面向对象(中)封装与继承

6.1 封装 6.1.1 封装概述 1、为什么需要封装? 适当的封装可以让代码更容易理解与维护,也加强了代码的安全性。 通俗的讲,把该隐藏的隐藏起来,该暴露的暴露出来。这就是封装性的设计思想。 随着我们系统越来越复杂,…

SQL数据库管理开发工具:DataGrip 2024(win/mac)激活版

JetBrains DataGrip是一款专业的SQL数据库管理开发工具。DataGrip允许您以不同的方式发展模式以及执行信息查询,并提供服务本地文化历史问题记录,可以提高跟踪您的所有学生活动并保护如果您不选择丢失您的工作。DataGrip允许您通过建立相应的操作按名称就…

mPEG-NCO,mPEG-isocyanate常被用于修饰蛋白质、肽或其他具有这些基团的材料组

【试剂详情】 英文名称 mPEG-NCO,mPEG-isocyanate 中文名称 聚乙二醇单甲醚异氰酸酯, 甲氧基-聚乙二醇-异氰酸酯 外观性状 由分子量决定,粘性液体或固体粉末 分子量 400,1k,2k,3.4k,5k&a…

vscode格式化找不到使用...格式化文档

问题记录: 修改一年前的一个项目的时候,忽然发现vscode没有办法对项目进行合理的格式化,但凡保存,因为格式化问题几百个错刷屏。 问题排查: 开始以为是setting.json文件被我修改乱了,复制过来最开始保存的…

HackMyVM-Pwned

目录 信息收集 arp nmap nikto whatweb WEB web信息收集 dirsearch wfuzz FTP ssh连接 提权 get user 系统信息收集 横向渗透 信息收集 arp ┌─[rootparrot]─[~/HackMyVM] └──╼ #arp-scan -l Interface: enp0s3, type: EN10MB, MAC: 08:00:27:16:3d:f8, …

草柴返利APP如何查询领取天猫超市优惠券拿天猫超市购物返利?

草柴返利APP是一款购物省钱工具。通过草柴APP可查询到淘宝、天猫、京东隐藏的大额优惠券及购物返利。今天分享,如何使用草柴返利APP查询领取天猫超市商品的优惠券拿天猫超市购物返利。购物前先领券,确认收货后再拿返利; 草柴返利APP如何查询领…

带你读论文第十期:上海人工智能实验室、ICCVW最佳论文奖,钟怡然博士分享...

Datawhale论文 来源:WhalePaper,负责人:芙蕖 WhalePaper简介 由Datawhale团队成员发起,对目前学术论文中比较成熟的 Topic 和开源方案进行分享,通过一起阅读、分享论文学习的方式帮助大家更好地“高效全面自律”学习&…

读天才与算法:人脑与AI的数学思维笔记01_洛夫莱斯测试

1. 创造力 1.1. 创造力是一种原动力,它驱使人们产生新的、令人惊讶的、有价值的想法,并积极地将这些想法付诸实践 1.2. 创造出在表面上看似新的东西相对容易 1.3. 在遇到偶然间的创造性行为时,都会表现得异…

多维时序 | Matlab实现TCN-LSTM时间卷积长短期记忆神经网络多变量时间序列预测

多维时序 | Matlab实现TCN-LSTM时间卷积长短期记忆神经网络多变量时间序列预测 目录 多维时序 | Matlab实现TCN-LSTM时间卷积长短期记忆神经网络多变量时间序列预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 1.【Matlab实现TCN-LSTM时间卷积长短期记忆神经网络多变量…

10分钟学会提示词工程

以下是我制作ppt的截图,更多内容可以下载对应ppt自己学习哈~

zabbix解析以及安装

目录 目录 zabbix 是什么? 监控主要功能 zabbix 监控原理: zabbix运行机制 Zabbix的监控方式 Zabbix监控系统监控对象 Zabbix的优缺点 Zabbix的缺点 zabbix主要特点 zabbix 监控部署在系统中,包含常见的五个程序: 监控的架构 3.maste…

WebApis知识总结以及案例(续3)

综合案例 小兔鲜页面注册 分析业务模块 发送验证码模块 用户点击之后,显示05 秒后重新获取 时间到了,自动改为重新获取 //1.发送短信验证码模块const codedocument.querySelector(.code)let flagtrue//通过一个变量来控制 节流阀 // 1.1 点击事件co…

布局香港之零售中小企篇 | 传承之味,迈向数字化经营的时代

随着内地与香港两地经贸合作日渐紧密,越来越多内地消费品牌将目光投向香港这片充满机遇的热土,纷纷入驻香港市场。「北店南下」蔚然成风,其中不乏已在内地市场深耕多年的传统老字号。数字化经营时代,老字号焕新刻不容缓&#xff0…

Vue3 笔记

vue3笔记 1. Vue3简介1.1. 【性能的提升】1.2.【 源码的升级】1.3. 【拥抱TypeScript】1.4. 【新的特性】 2. 创建Vue3工程2.1. 【基于 vue-cli 创建】2.2. 【基于 vite 创建】(推荐)2.3. 【一个简单的效果】 3. Vue3核心语法3.1. 【OptionsAPI 与 CompositionAPI】Options API…

四川古力未来科技抖音小店:科技魅力绽放,专业品质引领未来

随着互联网的快速发展,电商平台已成为消费者购买商品的重要渠道之一。在众多电商平台中,四川古力未来科技抖音小店以其独特的科技魅力和专业品质,吸引了众多消费者的目光。今天,我们就来一起探讨这家小店背后的故事,看…

代码随想录阅读笔记-回溯【分割回文串】

题目 给定一个字符串 s,将 s 分割成一些子串,使每个子串都是回文串。 返回 s 所有可能的分割方案。 示例: 输入: "aab" 输出: [ ["aa","b"], ["a","a","b"] ] 思路 本题这涉及到两个关…

专题:数据资产化技术

点击上方蓝字关注我们 2024年1月,数据资产入表工作启动,这是以数据为关键要素的数字经济发展过程中迈出的一大步。在官方认可数据资产可以入表后,接下来的问题是,数据资产如何入表?即数据资产化如何实现?由…

WPS二次开发系列:WPS SDk功能就概览

作者持续关注WPS二次开发专题系列,持续为大家带来更多有价值的WPS开发技术细节,如果能够帮助到您,请帮忙来个一键三连,更多问题请联系我(QQ:250325397) 作者通过深度测试使用了WPS SDK提供的Demo&#xff0…

轻松上手MYSQL:MYSQL初识(上)

​🌈 个人主页:danci_ 🔥 系列专栏:《MYSQL入门》 💪🏻 制定明确可量化的目标,坚持默默的做事。 轻松上手MYSQL:从零开始构建你的数据库世界 🚀 🚀欢迎来到My…

pmp认证考试一年有几次,报名复杂吗?

PMP认证怎么报名?PMP培训机构怎么看是否靠谱? PMP认证报名官方有一个流程图,大家可以参考一下这几个步骤,如果你先前没有了解过PMP的话可能看着有点乱,但是如果是在机构培训后考试的就会觉得简单,毕竟这些…