Step 1. 导入模块
In [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 # 用于在jupyter lab中显示本地图片Step 2. 乐高淘宝数据分析及其可视化
2.1 乐高淘宝数据概览
In [2]:
df_tb =pd.read_csv(r"/home/mw/input/legao3225/乐高淘宝数据.csv") df_tb.head()Out[2]:
goods_name shop_name price purchase_num location 0 乐高旗舰店官网悟空小侠系列80012孙悟 乐高官方旗舰店 1299.0 ['867人付款'] 浙江 嘉兴 1 LEGO乐高 71043收藏版哈利波特霍格沃兹城堡玩具礼物 天猫国际进口超市 3299.0 ['259人付款'] 浙江 杭州 2 LEGO乐高机械组布加迪42083粉丝收藏旗舰款玩具模型礼物 天猫国际进口超市 2799.0 ['441人付款'] 浙江 杭州 3 乐高旗舰店官网3月新品76895超级赛车系列法拉利赛车积木玩具男孩 乐高官方旗舰店 199.0 ['358人付款'] 浙江 嘉兴 4 乐高旗舰店官网3月新品得宝系列10921超级英雄实验室大颗粒益智 乐高官方旗舰店 299.0 ['126人付款'] 浙江 嘉兴 In [3]:
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())———————————————————— 数据集存在重复值个数: 993 ———————————————————— 数据集缺失值情况: goods_name 0 shop_name 0 price 0 purchase_num 0 location 0 dtype: int64 ———————————————————— 数据集各字段类型: goods_name object shop_name object price float64 purchase_num object location object dtype: object ———————————————————— 数据总体概览: <class 'pandas.core.frame.DataFrame'> RangeIndex: 4404 entries, 0 to 4403 Data columns (total 5 columns): goods_name 4404 non-null object shop_name 4404 non-null object price 4404 non-null float64 purchase_num 4404 non-null object location 4404 non-null object dtypes: float64(1), object(4) memory usage: 172.1+ KB None2.2 乐高淘宝数据处理
In [4]:
# 去除重复值 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()<class 'pandas.core.frame.DataFrame'> RangeIndex: 3411 entries, 0 to 3410 Data columns (total 5 columns): goods_name 3411 non-null object shop_name 3411 non-null object price 3411 non-null float64 purchase_num 3411 non-null object location 3411 non-null object dtypes: float64(1), object(4) memory usage: 133.3+ KBIn [5]:
# 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)Out[5]:
goods_name shop_name price purchase_num location sales_volume province 0 乐高旗舰店官网悟空小侠系列80012孙悟 乐高官方旗舰店 1299.0 867 浙江 嘉兴 1126233.0 浙江 1 LEGO乐高 71043收藏版哈利波特霍格沃兹城堡玩具礼物 天猫国际进口超市 3299.0 259 浙江 杭州 854441.0 浙江 2 LEGO乐高机械组布加迪42083粉丝收藏旗舰款玩具模型礼物 天猫国际进口超市 2799.0 441 浙江 杭州 1234359.0 浙江 3 乐高旗舰店官网3月新品76895超级赛车系列法拉利赛车积木玩具男孩 乐高官方旗舰店 199.0 358 浙江 嘉兴 71242.0 浙江 4 乐高旗舰店官网3月新品得宝系列10921超级英雄实验室大颗粒益智 乐高官方旗舰店 299.0 126 浙江 嘉兴 37674.0 浙江 2.3 乐高销量排名淘宝店铺Top50
乐高官方旗舰店t_1480604179663zhou童趣互娱h543515750贝妮欧悠于曼母婴专营店gaojiayi8888cnnetearn绝代老妈666乐高玩具专卖店nbzxz了了包巴yimansiyong13579nc_zonehyj600465捷顺诚儿童玩具直销店无敌狮的战车积木班长yyyyy_5077韩xiao晓云陈z峰琳琳积木001乐佳迪玩具店luohuan900717浅海蓝深05k10k15k20k25k30k5k10k15k20k25k销量乐高销量排名淘宝店铺Top50店铺名称销量
2.4 乐高产地数量排名top50
广东上海北京浙江江苏辽宁天津湖北山东美国福建湖南河南澳大利亚香港安徽广西台湾四川黑龙江江西日本020040060080010002004006008001000店铺统计数乐高产地数量排名top50地区店铺统计数
2.5 天猫乐高价格分布
0~50元89526.2%100~200元70120.6%50~100元48614.2%500~1000元41112%300~500元37010.8%200~300元2888.44%1000元以上2607.62%0~50元100~200元50~100元500~1000元300~500元200~300元1000元以上天猫乐高价格分布
2.6 不同价格区间的销售额整体表现分布
1000元以上18,742,166.8932.2%500~1000元9,250,876.315.9%100~200元9,163,543.9115.8%300~500元8,885,389.3215.3%200~300元4,562,817.647.85%50~100元4,254,628.197.32%0~50元3,276,343.915.64%1000元以上500~1000元100~200元300~500元200~300元50~100元0~50元不同价格区间的销售额整体表现分布
2.7 淘宝乐高标题词云图
In [49]:
text = get_cut_words(content_series=df_tb['goods_name']) text[:10]Building prefix dict from the default dictionary ... Loading model from cache C:\Users\H1638\AppData\Local\Temp\jieba.cache Loading model cost 0.820 seconds. Prefix dict has been built successfully.Out[49]:
['乐高', '旗舰店', '官网', '悟空小侠', '系列', '80012', '孙悟', 'LEGO', '乐高', '71043']In [51]:
# 绘制词云图 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')Out[51]:
Step 3. 乐高天猫旗舰店数据分析及其可视化
3.1 乐高天猫旗舰店数据概览
In [16]:
df_tm = pd.read_csv(r'/home/mw/input/legao3225/天猫乐高旗舰店数据.csv') df_tm.head()Out[16]:
title age_range price sales_num comment_num color_cat 0 乐高哈利波特系列霍格沃茨城堡71043成人收藏 适用年龄范围:16+岁 3999.00 139 511 71043 霍格沃兹城堡 1 乐高旗舰店Ideas系列21319中央咖啡厅老友记收藏送礼 适用年龄16岁+ 699.00 454 1299 无 2 乐高旗舰店官网2020年新品10269 哈雷戴维森®肥仔®摩托车成人收藏 NaN 999.00 276 509 无 3 乐高旗舰店官网2020年新品Ideas系列21320恐龙化石男女孩玩具礼物 NaN 599.00 359 524 无 4 乐高旗舰店官网10874智能蒸汽火车遥控轨道大颗粒益智积木玩具 适用年龄范围:2-5岁 549.00 806 2884 10874蒸汽智能火车 3.2 乐高天猫旗舰店数据处理
In [17]:
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')In [18]:
df_tm['title'] = df_tm.title.str.replace('乐高旗舰店|官网|2020年', '') #销售额 df_tm['sales_volume'] = df_tm['sales_num'] * df_tm['price']3.3 乐高旗舰店月销量商品top50
悟空小侠系列80012孙悟空齐天大圣黄金机甲乐高5月新品悟空小侠系列80008悟空小侠云霄战机孙悟空齐天大圣城市组60226火星探测航天飞机城市组太空系列60226火星探测航天飞机积木玩具10874智能蒸汽火车遥控轨道大颗粒益智积木玩具乐高5月新品悟空小侠系列80009猪大厨移动钉耙车好朋友41366奥莉薇亚的草莓蛋糕咖啡店乐高迪士尼公主系列43172艾莎的魔法冰雪城堡积木玩具城市组60139移动指挥中心积木玩具得宝系列10899冰雪奇缘城堡大颗粒益智玩具积木乐高积木玩具 10847 数字火车 大颗粒益智儿童拼装玩具积木玩具得宝系列10847数字火车大颗粒儿童玩具得宝系列10887我的自由创意趣玩箱大颗粒玩具积木幻影忍者系列70668雷电忍者杰的暴风战机城市组60243警用直升机大追击积木玩具经典创意10696经典创意中号积木盒LEGO积木玩具3月新品76895超级赛车系列法拉利赛车积木玩具男孩3月新品超级英雄系列76141漫威灭霸机甲积木玩具21318树屋玩具积木成人送礼赛车系列75892迈凯伦塞纳LEGO玩具积木汽车模型5月新品悟空小侠系列80010牛魔王烈火机甲玩具新品机械组 42103 亮绿色改装赛车 积木玩具新品得宝系列10909心形创意积木盒大颗粒3月新品76148超级英雄系列蜘蛛侠大战章鱼博士积木幻影忍者系列70676劳埃德的泰坦机甲LEGO玩具积木010002000300040005000600010002000300040005000销量乐高旗舰店月销量商品top50商品销量
3.4 乐高旗舰店不同价格区间商品数量分布
100~200元8623.3%50~100元7119.2%500~1000元6116.5%0~50元5214.1%200~300元3910.6%300~500元359.49%1000元以上256.78%100~200元50~100元500~1000元0~50元200~300元300~500元1000元以上乐高旗舰店不同价格区间商品数量分布
3.5 乐高旗舰店不同价格区间的销售额整体表现
500~1000元20,173,60137.4%100~200元11,246,53220.9%1000元以上7,728,57714.3%50~100元5,757,30610.7%200~300元4,934,2479.16%300~500元3,008,9345.58%0~50元1,026,7841.91%500~1000元100~200元1000元以上50~100元200~300元300~500元0~50元乐高旗舰店不同价格区间的销售额整体表现
3.6 乐高旗舰店商品标题词云图
In [26]:
text = get_cut_words(content_series=df_tm['title']) text[:6]Building prefix dict from the default dictionary ... Dumping model to file cache /tmp/jieba.cache Loading model cost 0.854 seconds. Prefix dict has been built succesfully.Out[26]:
['乐高', '哈利波', '系列', '霍格', '沃茨', '城堡']In [72]:
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')Out[72]:
Python数据可视化淘宝天猫玩具销售数据
最新推荐文章于 2024-06-07 11:59:53 发布
本文主要介绍了对乐高在淘宝和天猫旗舰店的数据进行清洗、处理,包括去除重复值、数据类型转换、销售额计算等。内容涵盖了销量排名、价格分布分析、商品标题词云图的创建,以及天猫旗舰店的类似分析。
摘要由CSDN通过智能技术生成