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

简介: 淘宝天猫玩具销售数据可视化(下)

淘宝天猫玩具销售数据可视化(上)https://developer.aliyun.com/article/1507875


附录

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')


目录
相关文章
|
9月前
|
数据可视化 算法 大数据
电商平台数据可视化分析网红零食销量
电商平台数据可视化分析网红零食销量
智能销售获客系统,1个功能!提升普通销售成交率的神器,轻松成为销冠!
在销售领域,提高客户成交率是关键目标。本文介绍了一种利用“AI 销售系统”的自动监测功能来提升成交率的方法。该功能能够自动收集客户高频问题和易导致客户流失的不良话术,帮助销售人员提前准备、避免错误。同时,系统还收集销冠的话术,为普通销售人员提供学习和借鉴的机会,助力他们不断提升销售技巧,向销冠目标迈进。
智能销售获客系统,1个功能!提升普通销售成交率的神器,轻松成为销冠!
|
4月前
|
SQL 消息中间件 存储
小象超市(原美团买菜) 的大屏图表
小象超市(原美团买菜) 的大屏图表
124 0
|
9月前
|
数据可视化 数据挖掘 数据处理
淘宝天猫玩具销售数据可视化(上)
淘宝天猫玩具销售数据可视化
192 1
|
9月前
|
人工智能 自然语言处理 机器人
销售利器大集结:13种智能销售工具全面解析
该文探讨了人工智能在销售领域的应用,测试了13款领先工具,如Zoho CRM、Email Subject Line Generator和ChatGPT Plus等,这些工具通过数据分析、自动化任务和智能交互提升销售效率。然而,使用AI也带来人机交互和数据安全的挑战。文章强调,结合人工智能和人类销售人员的优势是关键,同时应谨慎处理相关问题。
376 4
|
9月前
|
JSON 安全 API
解锁淘宝商品评论API接口:电商数据分析的新视角
淘宝商品评论API接口是淘宝开放平台提供的一组API接口,允许开发者通过编程方式获取淘宝商品评论数据。这些接口可以获取到商品的详细信息、用户评论、评分等数据,为电商数据分析提供了丰富的素材。
|
9月前
|
安全 数据可视化 数据挖掘
数据分享|AARRR模型淘宝用户行为分析、电商销售分析
数据分享|AARRR模型淘宝用户行为分析、电商销售分析
|
9月前
|
监控 数据挖掘 API
案例研究:如何通过淘宝天猫商品销量数据分析竞争对手
淘宝天猫的商品销量数据接口主要用于商品数据分析和监控业务,通过这些接口可以获取商品的实时销量、30天销量以及总销量等详细信息。以下是关于这一数据接口的详细介绍:
|
9月前
|
运维 API 数据安全/隐私保护
京东JDAPI:电商行业的得力助手
在当今电商行业中,数据的获取与利用显得尤为重要。作为中国领先的电商平台,京东提供了丰富的API接口,其中JD商品详情API是关键之一,它允许第三方开发者获取京东平台上的商品详情信息。本文将深入探讨京东JD商品详情API在电商行业中的重要性,以及如何通过该API实现实时数据获取。
|
数据挖掘 数据处理 Python
超市营业额数据分析
超市营业额数据分析
514 0
超市营业额数据分析