前面环境都搞的差不多了,这次咱们进入实战篇,来计算一列的统计值。统计值主要有最大值、最小值、均值、标准差、中位数、四分位数。话不多说,直接进入正题。
本文介绍使用Excel和Python来计算上述统计值,而Hive和Spark将放在下一篇中。
1、数据介绍
这里咱们使用的是iris分类数据集,数据下载地址为:
http://archive.ics.uci.edu/ml/datasets/Iris
下载后转换为xlsx格式的文件,数据如下:
也可以在公众号后台回复 “iris” 下载相应数据。
2、使用Excel计算统计值
咱们一个个来哈,在使用过程中还是学到了很多东西的,如果你都会了,也建议你看一下,嘻嘻!
2.1 最大值 & 最小值
在Excel统计一列或者指定单元格区间的最大值或最小值,直接使用max和min函数即可:=MAX(A2:A151)
=MIN(A2:A151)
统计结果如下:
2.2 平均值
在Excel统计一列或者指定单元格区间的平均值,直接使用average函数即可:=AVERAGE(A2:A151)
统计结果如下:
2.3 样本标准差 VS 总体标准差
在Excel统计一列或者指定单元格区间的标准差,可就没那么简单了,excel里面共有四个方法:
共四个方法,其实可以分成两组,即统计样本标准差和总体标准差,首先回顾一下二者的计算公式:
总体标准差对应的英文是Population standard deviation , 在Excel中一般使用STDEV.P 或者 STDEVPA方法计算,这里的P便是Population的意思。
样本标准差对应的英文是Sample standard deviation,在Excel中一般使用STDEV.S 或者 STDEVA方法计算,这里的S便是Sample的意思。
这里我们先使用STDEV.P和STDEV.S 分别计算一下总体标准差和样本标准差:=STDEV.P(A2:A151)
=STDEV.S(A2:A151)
结果如下:
接下来说下STDEV.P和 STDEVPA的区别,STDEV.S和STDEVA的区别与其相同。两者区别是 STDEV.P 函数忽略样本中的逻辑值和文本, STDEVPA 不忽略,看下面的结果:
在上面的数据中,如果只计算4个数字的总体标准差,结果当然是0,因为四个数字都是2,所以STDEV.P的结果是0,但是STDEVPA的结果却不是0,因为这个函数将文本和逻辑值False当作0处理,把逻辑值True当作1处理,我们来验证下:
结果印证了咱们刚才的说明。
2.3 中位数
在Excel统计一列或者指定单元格区间的中位数,直接使用MEDIAN函数即可:=MEDIAN(A2:A151)
中位数的计算方法,如果数据量的个数为奇数的话,就是中间的一个数,如果数据量个数为偶数个的话,就是最中间两个数的平均值,咱们这里是150个数