资料分析-导论
随着互联网的发展,任何岗位都离不开资料分析。随着互联网的发展,每天都在产生大量的数据。同时,这些数据也会反向产生价值。比如,用户在互联网上购物时,可以通过评价,购买量,和价格来选择一件商品。反之,网络商家也可以通过用户行为,进一步挑选什么样的商品更好卖,如何对商品进行定价,抑或如何对商品进行宣传推广。通过这些例子,我们可以看到资料分析在工作中的重要性。那么,资料分析的具体技能包括哪些呢?
资料分析的技能可以大致分为两类:硬技能和软技能。硬技能是指硬性资料分析和工具的使用,比如Excel,SQL,Tableau,Python处理大规模数据。软技能是指对事物的认知方式和经验积累,即为透过现象,能否看清楚导致这一现象的本质?对于同一组数据,不同层次的人的解读会大不相同。这时候,经验的积累会对未来的决策产生积极影响,犯错误的概率会对应减少。
互联网资料分析
互联网通常指信息传输的一种载体,通过电子化的方式留存信息,与传统线下基于实物的传输方式相对应。比如,纸币和数字货币,他们的作用都是用来交易,但交易的方式是不同的。纸币是线下、实物的交易载体,数字货币是线上的,以一种虚拟的形式进行交易。纸币和数字货币通常是等值的,只是交易方式有所不同。
资料分析是指对数据的规律进行总结、提炼,从而进行最后的决策。比如,在研究数据分析岗位人才需求时,首先我们需要获取招聘信息,基于数据对职位数进行统计。为了进行同类别比较,还需要统计其他岗位的信息,从而确定数据分析岗位在整个市场中的地位。由于这些资料都是从互联网获取的,所以整个流程是基于互联网的资料分析。
认识数据
数据是对事物的描述和记录。根据数据的计量层次,我们可以进一步对数据进行分类。对于以下这一组数据:黄瓜、番茄、森林、书,他们都属于文字描述类数据,我们无法对其进行排序、比较,因此他们的计量层次比较低。对于数值型数据:1,2,3,4,5,这些数据可以进行排序、计算差异、做加减乘除、做比较,因此他们的计量层次比较高。
下面我们来具体看数据的分类。
定类数据 (Nominal Data)
举例来说,
- 颜色: 红色、白色、黄色
- 性别:男性、女性
- 职位:产品经理、运营、市场营销
这些数据有什么特点呢?我们可以发现,这几组数据都是按照类别属性进行分类,各个类别之间是平等并列的关系。这种数据不带有数量的信息,并且不能在各个类别之间进行排序。对于这种数据,主要的数值计算是计算其每一类别中的项目的频数和频率。
定序数据 (Ordinal Data)
举例来说,
- 受教育程度:小学、初中、高中、大学、硕士、博士
- 季度:春、夏、秋、冬
- 登记:合格、良好、优秀
可以观察到,定序数据和定类数据有相似的地方,就是都是文字描述型数据。不同的是,定序数据是可以进行排序、比较优劣。在使用过程中,可以通过将编码进行排序,表示之间的高低差异。
定距数据(Interval Data)
举例来说:
- 温度:20°,50°,100°
- 成绩: 50, 65, 70, 100
- 年龄:8, 25, 40, 60
定距数据和前两种数据相比,是数值型数据,它具有一定单位的实际测量值。定距数据的准确性比定类和定序数据更高。通过定距数据,我们可以计算出各个变量之间的实际差距(加、减)
定比数据(Ratio Data)
举例来说:
- 利润:10万,20万,30万
- 薪酬:3000,6000, 9000, 12000
- 用户数:210, 3500, 49000
相比定距数据,定比数据不但可以进行大小比较、排序、加减法,还可以进行乘除运算。在定距尺度中,0表示数值;在定比尺度中,0表示“没有”。定比数据中存在绝对零点,而定距数据不存在。有了绝对零点,即可进行乘除运算。
总结
综上来看,我们可以将数据分为定性、定量数据。定性数据是一组表示事务性质、规定实物类别的文字表属性数据,包括定类数据和定序数据。定量数据是指以数量形式存在着的属性,并因此可以对其进行测量,包括定距数据和定比数据。
统计指标
总体指标、相对指标
统计指标是体现总体数量特征的概念和数值,根据分析目的不同,统计指标会随之变化。在进行房屋设计相关的分析时,统计指标可以涉及到建筑面积、竣工面积、技术装备率。在进行提升用户转化率分析时,涉及网站浏览量、着陆页、跳失率的指标。在选择理财产品的时候,往期业绩,风险系数,年化收益等都会成为统计指标。
统计指标根据它体现的内容可以分为总体和相对两大类别。总量指标是在特定条件下的总规模、总水平或工作总量。比如,在计算GDP(国内生产总值)、总人口、销售总额时,会用到总量指标(总和SUM)。如果考虑总体的平均水平,可以考虑平均指标,也称作集中趋势指标,平均数是其中一种指标。
和总体指标相对应的相对指标,是两个有联系的现象数值相比得到的比率。它描述的是相对关系,而不是总体情况。
下面的表格给出了1-12月的销售额情况和占比。经过计算,销售总量为78,000元,占比即为各个数据/总量指标,占比就是比例,反映出各个部分占总体的比重,反映了总体的构成和比例。如果想要观察每月相对的比例,可以将每月的数据/公约数,得到1:2:3:...:10:11:12,即为比率,比率是数据项:数据项之间的比较,反映了相对关系。可以看出,年末/年初=12,可以突出上升、增长幅度。在销售分析过程中,更多关注的是增长率,环比、同比。比如,我们想要了解最近2个月的销售情况,是增长还是下跌?以11月和12月的数据为例,用 (本期数 - 上期数)/上期数 * 100%
得到环比。具体的 (12000 - 11000)/11000=9.09%,为当前12月周期环比增长率。
月份 | 销售额 | 占比 |
---|---|---|
1月 | 1,000 | 1.28% |
2月 | 2,000 | 2.56% |
3月 | 3,000 | 3.85% |
4月 | 4,000 | 5.13% |
5月 | 5,000 | 6.41% |
6月 | 6,000 | 7.69% |
7月 | 7,000 | 8.97% |
8月 | 8,000 | 10.26% |
9月 | 9,000 | 11.54% |
10月 | 10,000 | 12.82% |
11月 | 11,000 | 14.10% |
12月 | 12,000 | 15.38% |
如果我们想要了解长期的增长率,比如近2年来的销售表现,可以使用同比增长率,即为(本期数 - 同期数)/同期数 * 100%。
在以下例子中,可以算出12月份的同比增长率:(3450 - 2300) / 2300 = 50%。
第一年 | 销售额 | 第二年 | 销售额 |
---|---|---|---|
1月 | 1,200 | 1月 | 1,800 |
2月 | 1,300 | 2月 | 1,950 |
3月 | 1,400 | 3月 | 2,100 |
4月 | 1,500 | 4月 | 2,250 |
5月 | 1,600 | 5月 | 2,400 |
6月 | 1,700 | 6月 | 2,550 |
7月 | 1,800 | 7月 | 2,700 |
8月 | 1,900 | 8月 | 2,850 |
9月 | 2,000 | 9月 | 3,000 |
10月 | 2,100 | 10月 | 3,150 |
11月 | 2,200 | 11月 | 3,300 |
12月 | 2,300 | 12月 | 3,450 |
综上,环比更注重短期的涨幅表现,而同比更注重长期的表现。
集中趋势指标
在分析过程中,我们经常遇到这样一些问题:那个营销渠道引流效果最好?什么岗位的薪资待遇最高?哪一个产品最受欢迎?一个简单的方法就是利用平均值来描述不同选择的平均水平如何,以便得到初步结论。平均值就是集中趋势指标的一种。集中趋势指标体现的是数据的一般水平的指标,可以帮助我们快速了解样本数据的概况,最常用的集中趋势指标就是平均值。平均值的计算非常简单,即为所有数据相加/数据的个数。但平均值极为容易受到异常值的影响而变得失去意义,所以,在利用平均值之前,可以去除异常值,这样可以更准确的得到指标。当然,我们可以利用另外一个集中趋势指标,中位数。
中位数是按照顺序排列后居于中间位置的数。如果数据的个数为奇数时,中位数是位于(n+1)/2位置的数;如果是偶数时,中位数是最中间的两位数相加/2。在以下这个表格中,中位数是11000。可以看出,11000相比收到65,000影响的平均数更具有代表性。
工号 | 薪资 |
---|---|
20200103 | 7,500 |
20200104 | 8,600 |
20200101 | 9,000 |
20200106 | 9,500 |
20200105 | 11,000 |
20200102 | 12,500 |
20200107 | 13,500 |
20200108 | 14,500 |
20200109 | 65,000 |
另外一个集中趋势指标是众数,是一组数据中出现次数最多的数值。众数反映的是局部特征和密集度。注意,众数是可以有多个的。
离散趋势指标
离散趋势指标是体现内部差异度的指标,主要有三类可以表示:极差、平均差、标准差。极差为距离最远的两个点之间的距离,在下面的收盘价表中,极差为11.67-10.12=1.55。极差体现了数据内部最大的差异情况。
收盘价 |
---|
10.12 |
10.22 |
10.38 |
11.67 |
10.61 |
10.44 |
10.38 |
10.7 |
10.85 |
但是极差大就代表数据离散程度高吗?其实不一定,因为极差只关注了2个值,会受到个别因素干扰。为了能够真正了解数据的离散程度,我们可以使用平均差。平均差代表一组数据与平均值差异的平均差异。平均差用数学公式表示为:|每个数据项-均值|的总和/数据项个数。早知道收盘价数据表中,我们可以计算出平均值为10.59,所以收盘价表的平均差可以用:|收盘价-10.59|的总和/9来计算(这里||指绝对值),最后可以算出平均差为0.32。我们可以看出,数据项与平均值差距越大,数据就会越分散,反之越集中。为了进一步观察数据的离散程度,我们给出收盘价与涨跌幅表格。可以看出,11.67为一个明显的异常值。这个异常值的产生原因可能有很多,比如股东回购、政策利好、供需失衡。对于事件驱动型数据,在样本量较小时,容易导致误差。为了突出对于异常值的敏感程度,我们可以使用标准差来代替平均差。
收盘价 | 涨跌幅 |
---|---|
10.12 | 0.00% |
10.22 | 0.99% |
10.38 | 1.57% |
11.67 | 12.43% |
10.61 | -9.09% |
10.44 | -1.60% |
10.38 | -0.57% |
10.7 | 3.08% |
10.85 | 1.40% |
标准差的公式和平均差很类似,为sqrt(|每个数据项-均值|^2的总和/数据项个数)。这里我们可以看出,分母还是和数据项个数有关,但分子变为差值平方的总和。分子的平方项会放大数据的离散程度,所以标准差比平均差更有代表性。
分布形态
给定了数据,我们用点、线、面的方式将数据呈现出来。假设我们需要统计与数据相关的工作中,企业对工作经验的要求。我们可以将要求大致分成以下几类:应届毕业生,经验1年以下、经验1-3年,经验3-5年、经验5-10年,和经验不限。有了这样一些类别,按照经验要去年限,可以统计对应职位数量的频次。
经验 | 频数 |
---|---|
经验应届毕业生 | 1 |
经验1年以下 | 1 |
经验1-3年 | 101 |
经验3-5年 | 240 |
经验5-10年 | 77 |
经验不限 | 26 |
我们画出对应的直方图,就可以大致看出其分布。
得到了分布,我们可以将集中趋势指标和离散趋势指标对应到分布图中。分布图的高度对应数据的一般水平,可以使平均值、中位数、众数。分布图的宽度对应了数据的离散程度。下图展示了著名的正态分布:
可以看出,正态分布是一个对称的、中心为平均值的分布。离中心0点距离不同倍数的标准差点可以将整个数据分布分成几块。比如(-2s,2s)中间区域占整个分布大约95%,这里s指标准差。
除了正态分布,还有左偏分布和右偏分布,下图展示了一般情况下不同分布中平均值、中位数和众数的大小关系。
异常值
在之前的平均值例子中,我们可以发现异常值对于一些统计指标有一定的干扰。异常值是指与平均值偏差极大或极小的值,也可以称之为离群点。如何通过科学的手段来识别异常值呢?主要的思路是观察检测值与整体数据的差异度。比如,我们可以计算与平均值的倍数。在下面的薪资表中,大部分的薪资与平均数的倍数是在0-1之间的,但最后一条数据的倍数为3.87,即可能为异常值。
工号 | 薪资 | 倍数 |
---|---|---|
20200103 | 7,500 | 0.45 |
20200104 | 8,600 | 0.51 |
20200101 | 9,000 | 0.54 |
20200106 | 9,500 | 0.57 |
20200105 | 11,000 | 0.66 |
20200102 | 12,500 | 0.74 |
20200107 | 13,500 | 0.80 |
20200108 | 14,500 | 0.86 |
20200109 | 65,000 | 3.87 |
在实际分析中,异常值的判断需要具体情况具体分析。举一个例子,假设一个基金业绩走势在某一天突然下跌3%,能否立刻判断当天的值为异常呢?实际上,当年基金进行了分红派息,导致公司的钱会相对变少,基金业绩随之下降,这属于正常的现象。所以,不能简单通过数据直接判断异常值。
异常值的产生是有几种场景的。第一种是错误记录。比如说,数据在录入的时候,由于人员的手误(笔误),导致数据错误。在薪酬表例子中,录入人员可能在数据前多输入一个负号,导致结果为负数。这种情况下,我们可以直接将负号删除。第二种情况时错误添加。比如在薪酬表中错误地添加了一行为年龄=20的记录,这样的数据可以直接删除。还有一种情况是异常值是正确并且真是存在。对于这样的情况,我们需要判断这样的异常值是否反映特殊事件,例如之前提到的分红的情况。在这种情况下,不能武断通过数据反映的异常而得出结论,需要对应不同的特殊事件,对判断结果进行修正。对于周期性数据(旅游业销售数据,某些月份的数据比其他月份普遍高),我们不需要进行处理,因为数据本身就是如此。
那么对于那些需要处理的异常值,有几种方法可以参考。我们可以对错误数据填充空值,或者填充样本平均值。对于正确、真实,需要做调整的数据,可以根据实际情况进行调整。处理方式为数值 * 需要调整的比率。假设分红数据导致当天基金数据下降3%,我们可以将当天收盘价 * (1+0.03),之后再做统计时是基于调整后的数据进行的。
资料分析流程
主要包括一下流程
- 目标确定
- 数据获取
- 数据清洗
- 数据整理
- 描述分析
- 洞察结论
- 撰写报告
目标确定
在这一步,需要明确解决什么问题,达到什么目的。主要有两个方向,一个是针对现有情况进行分析(描述型分析),第二类是基于现状对未来进行预测(预测型分析)。
数据获取
包含两个部分:(1)字段设计,(2)数据提取。
假设我们现在分析销售额数据,对于字段设计,基础的指标有平均销售额、销售总额、增减幅度。这些指标在数据表中实际上并不存在。所以我们需要对指标进行拆分,得到基础数据,比如订单号、交易日期、交易金额。我们可以根据基础数据计算得到指标型数据。针对字段,我们应该如何提取数据呢?小企业会采取销售管理软件进行数据导入导出。对于互联网企业,大部分业务是在线上完成,所以会使用SQL从数据库中提取。
数据清洗
在获取数据之后,为了保证数据的可用性,我们需要对数据进行清洗,否则之后的计算统计结果可能是错误的。数据清洗主要针对4类情况:(1)异常值,(2)空白值,(3)无效值,(4)重复值。对于异常值的识别、判断和处理,我们之前已经提到。对于空白值、无效值、重复值,我们可以对其进行修正、平均值填补、或删除。
数据整理
在数据清理之后,我们需要对数据进行整理,格式化和指标计算。格式化处理可能包括对日期的处理、行列的格式化,最终生成一个二维表。同时,我们也会对一些指标进行计算,比如平均值、总额等。
描述分析
对于整理后的数据,我们可以进行挖掘、描述分析。描述分析包含对数据的描述和指标统计的描述。数据的描述指的是对数据的基本情况进行描述,比如数据总数、时间跨度、数据来源等。对于指标统计,首先要分析实际情况的数据指标(比如网站流量设计网页跳转率,每个网页的登录率;用户的转化需要计算用户注册率,用户转化率,用户购买率,用户活跃率等)。针对这些指标,有4类主要的描述分析场景:变化、分布、对比、预测。变化指的是随着时间变动而增加(近期销售额表现)。分布指的是不同层次上的表现(地域分布、人群分布、内容分布、点击量分布)。对比指的是数据项之间的比较(产品线对比、用户数对比)。预测指的是根据现有的增减幅度预测未来数据变化。
洞察结论
在进行分析之后,我们可以得到相应的结论。这是数据报告的核心,可以体现分析能力。
撰写报告
数据报告主要包含以下几个部分:报告背景(业务现状),报告目的(解决什么问题),数据基本情况(数据可信度),可视化图表(数据的可理解程度),策略选择(提出解决方案)。