ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

EH搜索     
EH云课堂-专业的职场技能充电站 Excel转在线管理系统,怎么做看这里 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
Excel不给力? 何不试试FoxTable! Excel 2016函数公式学习大典 挑战你的Excel知识,一起测验下 免费下载Excel行业应用视频
300集Office 2010微视频教程 Tableau-数据可视化工具 精品推荐-800套精选PPT模板,点击获取 ExcelHome出品 - VBA代码宝免费下载
你的Excel 2010实战技巧学习锦囊 欲罢不能, 过目难忘的 Office 新界面 Excel VBA经典代码实践指南
楼主: 13732120571

[分享] 强大的FREQUENCY函数学习过程、探索分析、实例分享(2015-7-19整理更新)~~~~

  [复制链接]

TA的精华主题

TA的得分主题

发表于 2015-8-10 09:33 | 显示全部楼层
本帖已被收录到知识树中,索引项:FREQUENCY
看见星光 发表于 2015-6-27 14:16
小鲜老师总算开帖了,撒钱撒钱。frequency是稍复杂又冷门的函数,用好的不多, ...

frequency 有几个应用比如,多条件并分层次取最小值对应项,多条件优先取值还是有现实意义的

TA的精华主题

TA的得分主题

发表于 2015-8-11 17:50 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2015-8-12 00:52 | 显示全部楼层
本帖最后由 13732120571 于 2015-8-12 12:08 编辑

第五篇  不重复个数

FREQUENCY——不重复个数

FREQUENCY——不重复个数




TA的精华主题

TA的得分主题

 楼主| 发表于 2015-8-12 00:58 | 显示全部楼层
本帖最后由 13732120571 于 2015-8-12 12:08 编辑

实例篇开始

第六篇   条件最大值例题出处
  友坛竞赛题
【字符争霸】第14期:返回绝对值最大的整数

FREQUENCY-7.png
例题二  条件第二大值
未详细说明,可以自己考虑下
是怎么从条件最大值升级的

FREQUENCY——条件第二大值

FREQUENCY——条件第二大值





评分

参与人数 3鲜花 +6 收起 理由
DamonZheng + 2 优秀作品
ae9480 + 2 很受启发
horselyq + 2 优秀作品

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2015-8-12 00:59 | 显示全部楼层
本帖最后由 13732120571 于 2015-8-12 12:07 编辑

第七篇   找最接近值           论坛经常有人求助的问题


FREQUENCY——找最接近值

FREQUENCY——找最接近值


TA的精华主题

TA的得分主题

 楼主| 发表于 2015-8-12 01:00 | 显示全部楼层
本帖最后由 13732120571 于 2015-8-12 14:42 编辑

第八篇    单条件提取不重复项&多条件计数1
           例题取自本论坛去重复再加双条件取不重复个数
http://club.excelhome.net/thread-1205185-1-1.htm

FREQUENCY——单条件提取不重复项&多条件计数

FREQUENCY——单条件提取不重复项&多条件计数



说明:《单个数值计频》规律1-变形记
思路:(加权)处理参数一、参数二、参数一与参数二,让参数二不符合条件的值比参数一小,计不到频。
一、去重复                                               
1、        LOOKUP+FREQUENCY+COUNTIF                                        
        1)        COUNTIF(I$8:I8,C$4:C$325) ={0;0;0;……;0}        
                C$4:C$325在I$8:I8区域中的个数,在I$8:I8下拉时,已经提取的客户来源的为1,否则返回0                                
        2)        (A$4:A$325=K$1) ={FALSE;FALSE;……;FALSE;TRUE;……;TRUE;FALSE;……;FALSE}
                A$4:A$325日期是否和K$1的日期一样,是的返回TRUE、不是返回FALSE;在参与加减乘等计算时,TRUE相当于值1、FALSE相当于值0                                
        3)        (A$4:A$325=K$1)-COUNTIF(I$8:I8,C$4:C$325) ={0;0;……;0;1;1;……;1;1;1;0;0;0;……;0}                        
                加权处理:符合A$4:A$325=K$1(TRUE=1)和和未被提取过COUNTIF(I$8:I8,C$4:C$325)=0的结果为:TRUE-0 =1-0 =1                                
                符合A$4:A$325=K$1(TRUE=1)和已经提取过的COUNTIF(I$8:I8,C$4:C$325)=1的结果为:TRUE-1 =1-1 =0                                
                不符合A$4:A$325=K$1(FALSE=0)和未被提取过的COUNTIF(I$8:I8,C$4:C$325)=0的结果为:FALSE-0 =0-0 =0                                
                不符合A$4:A$325=K$1(FALSE=0)和已经提取过的COUNTIF(I$8:I8,C$4:C$325)=1的结果为:FALSE-1 =0-1 =-1(不会出现已经提取过这种情况,所以不用考虑)                                
        4)        FREQUENCY(1,(A$4:A$325=K$1)-COUNTIF(I$8:I8,C$4:C$325)) ={0;0;……0;0;0;1;0;0;……;0}                        
                FREQUENCY 参数一的值1 在 参数二(A$4:A$325=K$1)-COUNTIF(I$8:I8,C$4:C$325)第一个为1 的值并 再相对位置计数为1                                
                如果参数二没有值1,1都大于参数二所有值,那么在参数二多1个的位置计数1。可以用到后续容错处理                                
        5)        0/FREQUENCY(1,(A$4:A$325=K$1)-COUNTIF(I$8:I8,C$4:C$325)) ={#DIV/0!;#DIV/0!;…………;;#DIV/0!}                                
                0/是为FREQUENCY产生的结果计数为1的返回0,计数0的返回错误值#DIV/0!                                
        6)        LOOKUP(,  =LOOKUP(0,                
                参数省略写法lookup参数一的值,实际值为0。        
        7)        )&""               
                把引用的真空单元格落地值变成空文本""                                
        8)        C$4:C5 =C$4:C65536                                
                lookup参数三的扩展性                                
                C$4:C5&"" 不等同C$4:C$65536&""(这个属于数组形式,不是单元格区域,不能扩展)                                
                《lookup向量形式 》扩展性及向量方向问题                                
        9)        LOOKUP(,0/FREQUENCY(1,(A$4:A$325=K$1)-COUNTIF(I$8:I8,C$4:C$325)),C$4:C5)&""  ="内部员工-NC"                                
                用lookup函数用0值定位参数二唯一的0值,并引用参数三现对位置的单元格,用&"" 把引用单元格变成文本 真空单元格的落地值0变成""                                
                一般查找最后值都用lookup(1,0/;经测试,在这个例子中用0比1去查找唯一值0更快,原因未研究出来。                                
2、        LOOKUP+FREQUENCY+MATCH                                       
        思路和COUNTIF一样,就是处理加权的方式有点不一样。这里就不详细解说了                                       
        优点:MATCH相对COUNTIF速度快很多
二、多条件不重复计数                                       
1、        COUNT+FREQUENCY+ROW                                
        1)        MATCH(B$4:B$325&"",B$4:B$325&"",) ={1;2;2;2;2;6;7;8;9;10;10;……;319;319;319;322}                                
                用MATCH函数求B$4:B$325&""分别在B$4:B$325&""位置的值(自然数)。&"" 容错处理,MATCH真空会返回错误值#N/A。                                
        2)        (A$4:A$325=K$1)*(C$4:C$325=J9)   ={0;0;0;0;0;……;0;0;1;1;1;0;0;0;0;1;1;1;1;1;1;0;……;0;0}                                
                日期A$4:A$324等于K$1并且顾客来源C$4:C$324等于J9的返回1,否则返回0                                
        3)        MATCH(B$4:B$325&"",B$4:B$325&"",)*(A$4:A$325=K$1)*(C$4:C$325=J9)   ={0;0;……;0;0;0;32;32;32;0;0;0;0;39;40;41;41;……;0;0}                                
                位置数(自然数)相对符合日期和顾客来源这两个条件的返回原值,否者返回0                                
        4)        ROW(A:A) ={1;2;3;4;5;……;65536}                               
                ROW最小值大于0且ROW最小值小于等于MATCH查找的位置数最小值,ROW最大值大于MATCH查找的位置数                                
        5)        FREQUENCY(ROW(A:A),MATCH(B$4:B$325&"",B$4:B$325&"",)*(A$4:A$325=K$1)*(C$4:C$325=J9))
                             ={0;……;0;32;0;0;0;0;0;0;7;1;1;0;0;3;0;0;0;4;1;0;0;0;4;0;0;……;0;0;65466}                                
                用FREQUENCY函数把ROW(A:A)的值分别在符合条件的位置数上计数,参数二相同的值只计数在第一个出现的值的位置                                
                ROW(A:A)大于参数二所有值的计数在FREQUENCY最后一个多出来的位置(这个位置肯定大于0值)                                
        6)        0/FREQUENCY(ROW(A:A),MATCH(B$4:B$325&"",B$4:B$325&"",)*(A$4:A$325=K$1)*(C$4:C$325=J9))
                        ={#DIV/0!;……;0;#DIV/0!;……#DIV/0!;0;#DIV/0!;0}                                
                FREQUENCY结果出来大于0的为0,等于0的返回错误值#DIV/0!                                
        7)        COUNT(0/FREQUENCY(ROW(A:A),MATCH(B$4:B$325&"",B$4:B$325&"",)*(A$4:A$325=K$1)*(C$4:C$325=J9)))-1  =12                                
                用COUNT忽略错误值、文本统计纯数值个数,这里是统计0值的个数。
                COUNT(……)-1 =减去FREQUENCY结果最后一个多余的计数(多加一个,再减一个)。                                

下面的就当做习题 单条件不重复项
******如何提取不重复的规格?******     
http://club.excelhome.net/thread-1209549-1-1.html     
(出处: ExcelHome技术论坛)     


FREQUENCY——习题

FREQUENCY——习题




TA的精华主题

TA的得分主题

 楼主| 发表于 2015-8-12 01:00 | 显示全部楼层
本帖最后由 13732120571 于 2015-8-23 16:22 编辑

第九篇   提取不重复项&多条件计数2

例题的链接忘了,反正是本论坛的

FREQUENCY——提取不重复项&多条件计数2

FREQUENCY——提取不重复项&多条件计数2



TA的精华主题

TA的得分主题

 楼主| 发表于 2015-8-12 01:01 | 显示全部楼层
本帖最后由 13732120571 于 2015-8-23 16:16 编辑

第十篇   重复指定数量字符

FREQUENCY-重复指定数量字符

FREQUENCY-重复指定数量字符



TA的精华主题

TA的得分主题

 楼主| 发表于 2015-8-12 01:02 | 显示全部楼层
本帖最后由 13732120571 于 2015-8-23 16:19 编辑

第十一篇   定位提取文本

FREQUENCY-定位提取文本

FREQUENCY-定位提取文本

TA的精华主题

TA的得分主题

 楼主| 发表于 2015-8-12 01:02 | 显示全部楼层
本帖最后由 13732120571 于 2015-8-23 16:22 编辑

第十二篇   定位符合条件位置

FREQUENCY-定位符合条件位置

FREQUENCY-定位符合条件位置


您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

关注官方微信,每天学会一个新技能

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

GMT+8, 2019-9-18 15:03 , Processed in 0.078653 second(s), 12 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2020 Wooffice Inc.

   

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

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

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