TRIMMEAN,功能是按照给定的百分点去除掉头尾数据点后再计算平均值。关于这个函数有几个容易忽视的地方。下面一一解析:
第一,“头部”和“尾部”的理解。帮助里写道:“函数 TRIMMEAN 先从数据集的头部和尾部除去一定百分比的数据点,然后再求平均值”。下图中哪个数据算头、哪个算尾呢?A1中的1算头、A5中的5算尾?
坑爹的MS并没有说清楚,实际上它并不是按照数据在单元格区域中的顺序,而是按照排序后的数据顺序,所以头尾应该是A1中的1和A3中的10!跟A5没有关系。
第二,关于第2个参数,百分比。这个表示是要去除掉的数据点为全部数据点的百分比,注意不是单独去掉头或尾的百分比!头、尾去除掉的数据点是一样多的,所以用这个百分比算出来的数据点,如果不是2的倍数,它就会向下舍入到2的倍数为止。
以上图中的C1、C2为例:
0.4 X 5 =2,表示要去除掉2个数据,头尾各1个(即去掉1、10),剩下2、4、5三个数求平均;而C2中的百分比是0.2,0.2 X 5 =1,头尾一共去掉1个数?总不能各去掉0.5个数吧?!向下舍2的倍数那就是0,结果就是干脆一个数也不去,相当于还是1、2、10、4、5这五个数的平均。
第三,还是这个百分比percent,帮助里有注解:如果 percent < 0 或 percent > 1,函数 TRIMMEAN 返回错误值 #NUM!。
然而经过实践,取值为0和1的时候结果并不完全如此。从Excel2003到Excel2013的四个版本都做了验证,结果如下:
百分比 | Excel2003 | Excel2007 | Excel2010 | Excel2013 |
0 | 正常 | 正常 | 正常 | 正常 |
1 | #NUM! | #NUM! | #NUM! | #NUM! |
而且这四个版本中TRIMMEAN函数的帮助几乎没有什么改变,看来MS应该要多做一些注解在帮助里了。
德宝老师博客原文:https://blog.debao.name/post-105.html?j=1