Python与市场分析案例
市场分析是运营过程中非常高频的场景,在拓展市场或者做阶段性战略目标时都离不
开市场分析,市场分析的结果是给决策者最好的支撑。
市场分析是指应用统计学、计量经济学等分析工具对特定市场的运行状况、产品生产、销售、消费、技术、市场竞争力、市场竞争格局、市场政策等市场要素进行深入的分析,从而发现市场运行的内在规律,进一步预测未来市场发展的趋势。
市场分析是发现和掌握市场运行规律的必经之路,对指导市场内企业的经营规划和发展具有决定性的意义。
1.市场分析的思路
市场分析是商业行为中非常重要的环节,是做策划、定位的前道工序。决策者只有了解市场,才能做出准确有效的决策。市场分析需要2 ~ 3 年的历史数据,如果历史数据的年限太少,则难以全面且准确地对市场做出预判。
l 市场容量(market volume)分析:这里分析的是市场相对规模。市场规模(market sizing)是难以估算的,根据统计学的方式估算的结果并不靠谱,因此用电商平台的市场数据(抽样)来分析电商的相对规模,给决策者提供有价值的参考依据。
l 市场趋势(market trends)分析:这是对市场的自然规律进行探索,以及对未来的发展趋势进行预测,让决策者提前根据市场发展趋势做出预判,并对经营策略进行调整。
l 市场细分(market segmentation)分析:市场细分是市场选择的基础,根据消费者群体将市场划分成多个子市场,子市场之间的需求存在着明显的差异。
2.市场数据的收集
市场分析的数据需要根据分析的对象确定收集范围。如果是线下零售数据,则个人或企业都难以使用技术手段收集,线下数据需要使用传感器等设备,并且拿到数据的授权才可以获得这类数据;如果是线上零售数据,则较为简单,可以通过购买电商平台提供的数据,也可以自行采集公开的页面数据。
(1)线下零售数据可在以下系统收集。
l 收银系统,系统中有每一笔订单的数据。
l CRM(客户关系管理)系统,系统中有客户的消费数据。
l 客流统计系统,系统中有商超或门店的客流量数据。
l ERP(企业资源计划)系统,系统中有销售的产品数据。
(2)线上零售数据可在以下渠道收集。
l 电商平台官方提供的行业数据平台。平台中有行业的数据,具体字段则是随提供数据的平台的不同而不同,官方提供的数据以指数类数据为主。
l 电商平台的公开页面,需要自行采集累积原始资料,而且只有连续的数据才有价值。因为是原始资料,所以可以支持自由度最大的分析,但自行累积的时间花费较长。
l 第三方电商数据平台。第三方都是采集公开的页面数据后经过清洗、统计、汇总等环节提供给用户的数据,虽然可以节省时间和成本,但是不能像自行采集累积那样拥有原始资料。
3.1 案例:市场大盘容量分析
市场容量也称为行业规模,是指某个市场在统计期间的需求总价值。市场容量分析是对行业规模的分析和判断,市场规模决定了行业中企业发展的天花板。
3.1.1 案例背景及数据理解
1.案例背景
市场容量分析的是市场绝对规模和相对规模,通过规模可以掌握市场的大小以及瓶颈。
l 业务需求:某企业要拓展品类,需要了解市场的大小。
l 分析目的:将市场数据分类汇总,整理成柱状图或饼图,以便于汇报。
2.数据说明
本节提供了驱虫剂行业下7 个子行业3 年的交易额数据,每个子行业的数据都在一张表格中,表格的格式是XLSX。本节任务是将每个表格中3 年的交易额数据进行汇总,并将汇总后的结果放在一起。
数据字段如下。
l 时间:对应记录统计的时间。
l 交易金额:统计时间内支付的交易金额。
3.案例实现思路
(1)将数据进行汇总,并计算绝对份额。
(2)计算相对份额。
(3)绘制柱状图和饼图。
下面介绍案例实现过程。
3.1.2 计算市场绝对规模
加载Pandas 库,代码如下。
import pandas as pd
使用Pandas 库导入数据,代码如下。
# 文件路径为python 文件位置下的相对路径
dwx=pd.read_excel(" 电商案例数据及数据说明/ 驱虫剂市场/ 电蚊香套装市场近三年交易额.xlsx")
fmfz=pd.read_excel(" 电商案例数据及数据说明/ 驱虫剂市场/ 防霉防蛀片市场近三年交易额.xlsx")
msmc=pd.read_excel(" 电商案例数据及数据说明/ 驱虫剂市场/ 灭鼠杀虫剂市场近三年交易额.xlsx")
mz=pd.read_excel(" 电商案例数据及数据说明/ 驱虫剂市场/ 盘香灭蟑香蚊香盘市场近三年交易
额.xlsx")
wxq=pd.read_excel(" 电商案例数据及数据说明/ 驱虫剂市场/ 蚊香加热器市场近三年交易额.xlsx")
wxp=pd.read_excel(" 电商案例数据及数据说明/ 驱虫剂市场/ 蚊香片市场近三年交易额.xlsx")
wxy=pd.read_excel(" 电商案例数据及数据说明/ 驱虫剂市场/ 蚊香液市场近三年交易额.xlsx")
1.观察数据
打印前5 行数据和后5 行数据(每个市场都要查看,此处仅以电蚊香市场为例)。使用head() 方法查看前5行数据,代码如下。
print(dwx.head())
输出结果
时间 交易金额
0 2018-10-01 106531.29 元
1 2018-09-01 105666.63 元
2 2018-08-01 201467.03 元
3 2018-07-01 438635.29 元
4 2018-06-01 953749.78 元
使用tail9() 方法查看后5 行数据,代码如下。
print(dwx.tail())
输出结果
时间 交易金额
31 2016-03-01 352013.31 元
32 2016-02-01 96979.48 元
33 2016-01-01 108412.71 元
34 2015-12-01 110068.83 元
35 2015-11-01 185094.22 元
2.查看数据的基本结构
使用info() 方法查看数据的字段及类型,代码如下。
print(dwx.info())
输出结果
RangeIndex: 36 entries, 0 to 35
Data columns (total 2 columns):
时间 36 non-null datetime64[ns]
交易金额 36 non-null float64
dtypes: datetime64[ns](1), float64(1)
通过对数据的探索与观察,数据集是7 个子行业数据。每个子行业的数据中一共有两列字段:时间和交易金额,其中时间的跨度是2015 年11 月至2018 年10 月。
用sum() 方法汇总数据,代码如下。
dwx[' 交易金额'].sum() # 汇总单张表格数据
将7 张表格的数据汇总并形成一张表,代码如下。
m_sum=pd.DataFrame(data=[dwx.sum().values,fmfz.sum().values,msmc.sum().values
,mz.sum().values,wxq.sum().values,wxp.sum().values,wxy.sum().values]
,columns=[' 销售额']
,index=[' 电蚊香',' 防霉防蛀',' 灭鼠灭虫',' 灭蟑',' 蚊香加热器',' 蚊香片',' 蚊香液'])
print(m_sum)