数据分析中位数的应用
浏览:2442次 出处信息
过于平淡的折线图,总是觉得不能够更好的表达数据的内涵。如下做个对比
A图
B图
对比A图和B图,哪个表达的重点更清晰呢?那必然是B图了,B图的特点是把最高的n个数字用不一样的图标展示了,起到了一目了然的效果。那么问题来来了?
怎么从一组数据中计算出这个分界点呢?
下面提供两个参考的算法:
平均数:是指一组数据中所有数据之和再除以数据的个数,它是反映数据集中趋势的一项指标。
中位数:把一组数据按从小到大的顺序排列,在中间的一个数字(或两个数字的平均值)叫做这组数据的中位数。
但是我们会发现平均值可以被极端数据影响,表示平均水平,中位数表示中间水平。所以这里要用的是中位数的算法。
写了一个中位数的函数
//中位数
function mid_num($arr)
{
//排序
sort($data);
$cnt=count($data);
if($cnt%2==0)
{
$x1=$cnt/2-1;
$x2=($cnt/2+1)-1;
return ($data[$x1]+$data[$x2])/2;
}else{
$id=round($cnt/2);
return $data[$id-1];
}
}
建议继续学习:
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
扫一扫订阅我的微信号:IT技术博客大学习
<< 前一篇:HashMap解决hash冲突的方法
后一篇:Linus:为何对象引用计数必须是原子的 >>
文章信息
- 作者:数据抓取 来源: 数据抓取
- 标签: 中位数
- 发布时间:2014-12-30 12:48:15
建议继续学习
近3天十大热文
-
[899] WordPress插件开发 -- 在插件使用 -
[135] 解决 nginx 反向代理网页首尾出现神秘字 -
[56] 整理了一份招PHP高级工程师的面试题 -
[55] Innodb分表太多或者表分区太多,会导致内 -
[53] 如何保证一个程序在单台服务器上只有唯一实例( -
[52] 全站换域名时利用nginx和javascri -
[52] CloudSMS:免费匿名的云短信 -
[52] 海量小文件存储 -
[52] 用 Jquery 模拟 select -
[51] 分享一个JQUERY颜色选择插件


