ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: onkey

[函数用法讨论系列11] 第五个查找函数--FREQUENCY的搜索机制。

[复制链接]

TA的精华主题

TA的得分主题

发表于 2006-12-13 14:11 | 显示全部楼层
QUOTE:
以下是引用guangyp在2006-12-12 23:54:55的发言:

有说得不对的地方先请gdliyy版主见凉。

我也认为FREQUENCY是一个统计函数,但偶认为gdliyy版主对FREQUENCY的第2个参数的处理方式理解有误。

请先看一下面这个公式,结果得到的是什么?=FREQUENCY({265;300;100;260},{250;300;200;150}) ,请先把答案写在一个单元格中,再试验公式结果, 看看你的答案对了吗?

对FREQUENCY的第1、2参数的处理方式,我的理解是这样的:计算到第2参数中的某个数据时,在第2参数中找到比这个数小一级的数,然后对第1参数统计,把结果存入结果数组的相应位置,再把第1参数已统计过的数据打上标记,即下次不再参与新的统计。

例如上面的公式结果是 {0;3;0;1;0} ,它的运算过程是:

后话:然而计算机是怎么在第2参数中找到比当前数据小一级的数,是否对第2参数先排序再找呢?这个我就不清楚了。


您的分析和我说的并不矛盾,只是我的说法省略了部分潜台词--我指的是逻辑上的排序,而并非物理上的排序:)

1、其实,{250;300;200;150},而Excel直接用4个分界点将坐标轴分为了5个区间:-∞;150;200;250;300;+∞,
(-∞,150]、(150,200]、(200,250]、(250,300]、(300,+∞]
这也是为何Frequency函数在统计时,N个分界点得出的结果为N+1个值的原因。

2、有了这5个区间,再进行分段统计就容易理解了,这也是为何onkey朋友所提到的查找原理,系统会按以上的区间进行索引,按区间统计个数,最后将结果按(-∞,150]、(150,200]、(200,250]、(250,300]闭区间的值对应第2个参数的分段值{250;300;200;150}写入内存数组,而最后的一个多出的区间(300,+∞]统计的结果当然就无条件地追加在内存数组中。

3、我觉得,Frequency函数之所以运算速度比COUNTIF快,是否是系统增加了索引功能,所以速度得到加倍的提升。这个可能只有Excel的开发人员才知道了,呵呵。。。

TA的精华主题

TA的得分主题

发表于 2006-12-13 14:31 | 显示全部楼层

呵呵,是偶误解版主的意思了。

TA的精华主题

TA的得分主题

发表于 2005-8-19 20:15 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2007-6-27 15:19 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2007-6-27 20:17 | 显示全部楼层
这个帖不错,又加深了对FREQUENCY函数的认识

TA的精华主题

TA的得分主题

发表于 2007-10-9 21:29 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
学习了。

TA的精华主题

TA的得分主题

发表于 2008-1-19 21:12 | 显示全部楼层

学 请问 有人在家里见过用frequency排序的用法吗?我现在找不到了,有见到的烦劳留个消息,谢谢!

TA的精华主题

TA的得分主题

发表于 2008-1-24 19:21 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2008-5-25 21:12 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
收下了,谢谢

TA的精华主题

TA的得分主题

发表于 2008-11-16 17:22 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
文件打不开,有以前下载过的,不知能否再上传一次
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-24 10:52 , Processed in 0.033900 second(s), 6 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表