
作者:Mika
数据:真达
后期:泽龙
【导读】
随着自热食品越来越备受消费者的追捧,各种自热小火锅、自热米饭也成了妥妥的网红食品。我们今天就来聊一聊自热食品。
python技术部分请直接看第三部分。
Show me data,用数据说话
今天我们聊一聊 自热食品
疫情期间,在宅在家里的日子,主打一人食概念的自热食品备受关注。自热火锅、自热米饭、即食酸辣粉、即食螺蛳粉等方便食品的销量迎来大幅度增长。光是今年春节,自热火锅的销售暴涨就惊起讨论无数。
自热火锅,自热米饭们就这么成为了新的网红食品,持续霸占着电商销售量榜首,你吃过自热火锅吗?哪款自热食品卖得最好?今天我们就带你用数据来解读这些自热食品。
01“万物皆可自热”
自热食品就这么火了
随着自热食品越来越备受消费者的追捧,各种自热小火锅、自热米饭也成了妥妥的网红食品。一时间,各种自热食品品牌如雨后春笋涌出。自热食品的市场规模也逐年扩大,预计今年将达到40亿元。
来源:《自热食品网络关注度分析报告》—微热点大数据研究院
超市里曾经被泡面牢牢占据的方便食品货架,迅速被自热火锅、自热米饭、自热面抢走半壁江山。
目前自热食品的入局企业不仅有传统的火锅巨头,如海底捞、小龙坎;还有像三只松鼠、良品铺子等零食厂商;同时还有像自嗨锅莫小仙等主打速食品类的新兴品牌。
根据莫小仙的数据,在疫情期间的整体销量同比增长近400%。而自嗨锅3月份公布的数据显示,其线上订单量在疫情期间增长了200%-300%。
其实像外卖、速冻、泡面和眼下潮头上的各种自热锅,本质都是“懒人经济”。同样是方便食品,泡个面还得烧水,速冻食品还得开火加热,而自热锅多方便,比起方便面自热锅在选择上好歹有肉有菜有饭有面,选择上略胜一筹。
02全网哪款自热火锅卖得最好?
我们使用Python获取了淘宝网自热食品相关的商品销售数据,共有4403条数据。
自热食品品类月销量
首先我们看看自热食品都有哪些类别。我们可以看到,卖得最好的是各种自热火锅,以超过190多万的月销量一骑绝尘。排在第二位的是自热米饭,销售量超过64万。排在后面的还有自热方便面、自热粉丝、自热烧烤等等。
哪款自热食品卖的最好?
那么都是哪些自热食品卖得最好呢?下面看到产品月销量排名top10。排在前三位的月销量都超过了12万,分别是椒吱自热小火锅、阿宽自热米饭和辣味客重庆自热小火锅。
自热食品店铺销量排行
都是哪些店铺占据着自热食品销量的前列呢?
通过分析我们发现,卖的做多的是天猫超市。那么具体的店铺方面,前三位分别是莫小仙、自嗨锅以及川蜀老味道。辣味客、白家陈记等店紧随其后。
自热食品标题词云
整理自热食物的标题后我们发现:“即时”、“速食”、“自热”、“懒人”等词都常常出现,果然是懒人经济,就是讲究个方便和快速,让你撕开包装,不需过多的操作就能吃上。类别上主要集中在“火锅”、“米饭”、“麻辣烫”、“面类”等。
自热食品店铺地区分布
这些自热食品的店铺都分布在哪些地区呢?从销量靠前的商品我们也可以猜到,这方面四川绝对是霸主,全网的自热食品店铺数量排名中,四川以1140家店铺称霸。
其次广东和上海分别以1007和1002家店位居二三。
自热食品都卖多少钱?
再看到自热食品的价格,可以看到30元以下的超过了半数,占比62.78%。这也是大众普遍能接受的价格,价格再高的话还不如点份外卖了。
03教你用Python分析
全网自热食品数据
我们使用Python获取了淘宝网自热食品相关的商品销售数据,进行了以下数据分析。
1数据读入
首先导入所需包:
# 导入包 import numpy as np import pandas as pd import time import jieba import os from pyecharts.charts import Bar, Line, Pie, Map, Page from pyecharts import options as opts import stylecloud from IPython.display import Image
使用循环读入数据集,查看一下数据集大小,可以看到一共有4403条数据。
file_list = os.listdir('../data/') df_all = pd.DataFrame() # 循环读入 for file in file_list: df_one = pd.read_excel(f'../data/{file}') df_all = df_all.append(df_one, ignore_index=True) print(df_all.shape)
(13984, 6)
预览一下数据。
df_all.head()
2数据预处理
我们对数据集进行以下处理,以便我们后续的可视化分析工作,经过处理之后的数据共8418条。
# 去除重复值 df_all.drop_duplicates(inplace=True) # 删除购买人数为空的记录 df_all = df_all[df_all['purchase_num'].str.contains('人付款')] # 重置索引 df_all = df_all.reset_index(drop=True) df_all.info()
<class 'pandas.core.frame.DataFrame'> RangeIndex: 8418 entries, 0 to 8417 Data columns (total 6 columns): # Column Non-Null Count Dtype --- ------ -------------- ----- 0 category 8418 non-null object 1 goods_name 8418 non-null object 2 shop_name 8418 non-null object 3 price 8418 non-null float64 4 purchase_num 8418 non-null object 5 location 8418 non-null object dtypes: float64(1), object(5) memory usage: 394.7+ KB
# 提取数值 df_all['num'] = df_all['purchase_num'].str.extract('(\d+)').astype('int') # 提取单位 df_all['unit'] = df_all.purchase_num.str.extract(r'(万)') df_all['unit'] = df_all.unit.replace('万', 10000).replace(np.nan, 1) # 重新计算销量 df_all['true_purchase'] = df_all['num'] * df_all['unit'] # 删除列 df_all = df_all.drop(['purchase_num', 'num', 'unit'], axis=1) # 计算销售额 df_all['sales_volume'] = df_all['price'] * df_all['true_purchase'] # location df_all['province'] = df_all['location'].str.split(' ').str[0] df_all.head()
此部分部分主要对以下的维度数据进行汇总和可视化分析,以下展示关键部分:
cat_num = df_all.groupby('category')['true_purchase'].sum() cat_num = cat_num.sort_values(ascending=False) # 条形图 bar1 = Bar(init_opts=opts.InitOpts(width='1350px', height='750px')) bar1.add_xaxis(cat_num.index.tolist()) bar1.add_yaxis('', cat_num.values.tolist()) bar1.set_global_opts(title_opts=opts.TitleOpts(title='自热食品细分品类月销量表现'), xaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(rotate=0)), visualmap_opts=opts.VisualMapOpts(max_=1960179.0) ) bar1.render()
shop_top10 = df_all.groupby('shop_name')['true_purchase'].sum().sort_values(ascending=False).head(10) shop_top10.sort_values(inplace=True) # 条形图 bar2 = Bar(init_opts=opts.InitOpts(width='1350px', height='750px')) bar2.add_xaxis(shop_top10.index.tolist()) bar2.add_yaxis('', shop_top10.values.tolist()) bar2.set_global_opts(title_opts=opts.TitleOpts(title='自热食品各店铺月销量排行Top10'), ) bar2.set_series_opts(label_opts=opts.LabelOpts(position='right')) bar2.set_colors(['#50A3BA']) bar2.reversal_axis() bar2.render()
province_top10 = df_all.province.value_counts()[:10] # 条形图 bar3 = Bar(init_opts=opts.InitOpts(width='1350px', height='750px')) bar3.add_xaxis(province_top10.index.tolist()) bar3.add_yaxis('', province_top10.values.tolist()) bar3.set_global_opts(title_opts=opts.TitleOpts(title='各省份自热食品店铺数量排行Top10'), visualmap_opts=opts.VisualMapOpts(max_=1140) ) bar3.render()
province_num = df_all.groupby('province')['true_purchase'].sum().sort_values(ascending=False) # 地图 map1 = Map(init_opts=opts.InitOpts(width='1350px', height='750px')) map1.add("", [list(z) for z in zip(province_num.index.tolist(), province_num.values.tolist())], maptype='china' ) map1.set_global_opts(title_opts=opts.TitleOpts(title='全国自热食品店铺月销量分布'), visualmap_opts=opts.VisualMapOpts(max_=500000), ) map1.render()
# 分箱 bins = [0,30,50,100,150,200,500,1000,9999] labels = ['0-30元', '30~50元', '50-100元', '100-150元', '150-200元', '200-500元', '500-1000元', '1000-8800'] df_all['price_cut'] = pd.cut(df_all.price, bins=bins, labels=labels, include_lowest=True) price_num = df_all['price_cut'].value_counts() # 数据对 data_pair2 = [list(z) for z in zip(price_num.index.tolist(), price_num.values.tolist())] # 绘制饼图 pie2 = Pie(init_opts=opts.InitOpts(width='1350px', height='750px')) pie2.add('', data_pair2, radius=['35%', '60%']) pie2.set_global_opts(title_opts=opts.TitleOpts(title='自热食品都卖多少钱?'), legend_opts=opts.LegendOpts(orient='vertical', pos_top='15%', pos_left='2%')) pie2.set_series_opts(label_opts=opts.LabelOpts(formatter="{b}:\n{d}%")) pie2.set_colors(['#EF9050', '#3B7BA9', '#6FB27C', '#FFAF34', '#D8BFD8', '#00BFFF']) pie2.render()
结语:
最后在说道自热食品,虽然说宅家时,打开包装稍等一会儿就能吃上热腾腾的小火锅或米饭,真的是太方便了。但是同时,关于自热食品安全隐患的消息也频出,在食物的种类和口感上更是比不上自己做的或外面吃的新鲜食材了。对自热食品你是怎么看的呢?欢迎留言告诉我们哦。
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
MySQL 执行计划中 rows 数量的准确性解析:原理、影响因素与优化 在 MySQL SQL 调优中,EXPLAIN执行计划是核心工具,而其中的row ...
2025-09-15解析 Python 中 Response 对象的 text 与 content:区别、场景与实践指南 在 Python 进行 HTTP 网络请求开发时(如使用requests ...
2025-09-15CDA 数据分析师:激活表格结构数据价值的核心操盘手 表格结构数据(如 Excel 表格、数据库表)是企业最基础、最核心的数据形态 ...
2025-09-15Python HTTP 请求工具对比:urllib.request 与 requests 的核心差异与选择指南 在 Python 处理 HTTP 请求(如接口调用、数据爬取 ...
2025-09-12解决 pd.read_csv 读取长浮点数据的科学计数法问题 为帮助 Python 数据从业者解决pd.read_csv读取长浮点数据时的科学计数法问题 ...
2025-09-12CDA 数据分析师:业务数据分析步骤的落地者与价值优化者 业务数据分析是企业解决日常运营问题、提升执行效率的核心手段,其价值 ...
2025-09-12用 SQL 验证业务逻辑:从规则拆解到数据把关的实战指南 在业务系统落地过程中,“业务逻辑” 是连接 “需求设计” 与 “用户体验 ...
2025-09-11塔吉特百货孕妇营销案例:数据驱动下的精准零售革命与启示 在零售行业 “流量红利见顶” 的当下,精准营销成为企业突围的核心方 ...
2025-09-11CDA 数据分析师与战略 / 业务数据分析:概念辨析与协同价值 在数据驱动决策的体系中,“战略数据分析”“业务数据分析” 是企业 ...
2025-09-11Excel 数据聚类分析:从操作实践到业务价值挖掘 在数据分析场景中,聚类分析作为 “无监督分组” 的核心工具,能从杂乱数据中挖 ...
2025-09-10统计模型的核心目的:从数据解读到决策支撑的价值导向 统计模型作为数据分析的核心工具,并非简单的 “公式堆砌”,而是围绕特定 ...
2025-09-10CDA 数据分析师:商业数据分析实践的落地者与价值创造者 商业数据分析的价值,最终要在 “实践” 中体现 —— 脱离业务场景的分 ...
2025-09-10机器学习解决实际问题的核心关键:从业务到落地的全流程解析 在人工智能技术落地的浪潮中,机器学习作为核心工具,已广泛应用于 ...
2025-09-09SPSS 编码状态区域中 Unicode 的功能与价值解析 在 SPSS(Statistical Product and Service Solutions,统计产品与服务解决方案 ...
2025-09-09CDA 数据分析师:驾驭商业数据分析流程的核心力量 在商业决策从 “经验驱动” 向 “数据驱动” 转型的过程中,商业数据分析总体 ...
2025-09-09R 语言:数据科学与科研领域的核心工具及优势解析 一、引言 在数据驱动决策的时代,无论是科研人员验证实验假设(如前文中的 T ...
2025-09-08T 检验在假设检验中的应用与实践 一、引言 在科研数据分析、医学实验验证、经济指标对比等领域,常常需要判断 “样本间的差异是 ...
2025-09-08在商业竞争日益激烈的当下,“用数据说话” 已从企业的 “加分项” 变为 “生存必需”。然而,零散的数据分析无法持续为业务赋能 ...
2025-09-08随机森林算法的核心特点:原理、优势与应用解析 在机器学习领域,随机森林(Random Forest)作为集成学习(Ensemble Learning) ...
2025-09-05Excel 区域名定义:从基础到进阶的高效应用指南 在 Excel 数据处理中,频繁引用单元格区域(如A2:A100、B3:D20)不仅容易出错, ...
2025-09-05