首页 >>  正文

unique函数只显示一个

来源:baiyundou.net   日期:2024-09-24

工作中,不重复计数的问题经常会出来,遇到就很头痛,因为使用的公式较为复杂,需要使用sum+countifs函数组合公式来解决,并且理解起来也偏困难。

1、单条件不重复计数

例如,我们在打卡地点如下,需要快速统计出打卡地点有多少个

因为要不重复计数,所以我们需要使用的公式是:

=SUM(1/COUNTIFS(B2:B9,B2:B9))

其中运用的原理很简单

比如,有N个不重复的数据,分别出现a,b,c...N次

那我们得到的结果就是

1/a*a+1/b*b+1/c*c+...1/N*N

所以不管abc是什么值,每一项都是数字1,最终得到的结果就是N

2、多条件不重复计数

如果我们现在要统计,不同员工的打卡地点数是多少

例如,吕布有3条记录,但是打卡地点只有2个,杭州和长沙,需要得到结果是2

遇到多条件不重复计数,有一个通用的可套用的公式:

=sum(if(条件列=条件值,1/countifs(条件列,条件值,计数列,计数列),0))

所以这里套进去,公式是:

=SUM(IF($A$2:$A$9=D2,1/COUNTIFS($A$2:$A$9,D2,$B$2:$B$9,$B$2:$B$9),0))

还是有点复杂的。

3、新公式Filter+unique+counta自由组合

在面对单条件不重复计数时,如果我们使用

=UNIQUE(B2:B9)

它会提取出来不重复的数据

所以单条件计数,只需要输入公式:

=COUNTA(UNIQUE(B2:B9))

面对多条件不重复计数时,我们可以加一个Filter筛选

=COUNTA(UNIQUE(FILTER(B:B,A:A=D2)))

先把当前员工的信息筛选出来,再去重,最后计数

但是也有一个bug,例如刘备,在左边表格里面根本没有打卡地点,理论上是0的,但用上述公式得到的结果是1,那是因为Filter筛选为空时,会报错,用counta函数对错误值计数时也会显示1

如果我们可以结合countifs直接对员工计数的这个值,是没有去重的,但是它能检验出数字0时,肯定打卡的地点也是0

所以我们两个公式结合一下,最终输入的公式是:

=MIN(COUNTIFS(A:A,D2),COUNTA(UNIQUE(FILTER(B:B,A:A=D2))))

轻松得到了多条件不重复计数的结果

关于这个小技巧,你学会了么?动手试试吧!

","gnid":"9f562200b24785543","img_data":[{"flag":2,"img":[{"desc":"","height":1104,"title":"","url":"https://p0.ssl.img.360kuai.com/t01341562acf18a6105.jpg","width":1198},{"desc":"","height":"868","title":"","url":"https://p0.ssl.img.360kuai.com/t01afc17a8b513aab7d.jpg","width":"990"},{"desc":"","height":"818","title":"","url":"https://p0.ssl.img.360kuai.com/t017fe51547a9476564.jpg","width":"1186"},{"desc":"","height":"874","title":"","url":"https://p0.ssl.img.360kuai.com/t01cbcc7fc0fe75b11e.jpg","width":"1366"},{"desc":"","height":"864","title":"","url":"https://p0.ssl.img.360kuai.com/t0195c08eec62d1337d.jpg","width":"1024"},{"desc":"","height":"852","title":"","url":"https://p0.ssl.img.360kuai.com/t01d7bbc9f57586c808.jpg","width":"986"},{"desc":"","height":"840","title":"","url":"https://p0.ssl.img.360kuai.com/t0119f169a7a4465122.jpg","width":"1186"},{"desc":"","height":"486","title":"","url":"https://p0.ssl.img.360kuai.com/t01564f05ad6e0f058b.jpg","width":"936"},{"desc":"","height":"866","title":"","url":"https://p0.ssl.img.360kuai.com/t01a2eeddde0d6fa542.jpg","width":"1422"},{"desc":"","height":"846","title":"","url":"https://p0.ssl.img.360kuai.com/t01c8dd617538bdd963.jpg","width":"1226"}]}],"original":0,"pat":"art_src_3,fts0,sts0","powerby":"pika","pub_time":1703593920000,"pure":"","rawurl":"http://zm.news.so.com/40bf4edee7fa83340abb8906bf361df1","redirect":0,"rptid":"bb70a076ad9590c1","rss_ext":[],"s":"t","src":"Excel自学成才","tag":[],"title":"Counta+Filter+Unique公式组合,多条件不重复计数,太简单

茹桦庾1637matlab中如何删除掉数组中的重复元素,只要出现重复就全部删掉 -
索饲生18875822893 ______ unique函数用来去除矩阵A中重复的元素, 比如说A=[1,2,3,3,4],那么unique(A)=[1,2,3,4]; 如果A=[1,2,3;3,4,5],那么unique(A)=[1,2,3,4,5]; unique(A,'rows')用来去除矩阵A中重复的行, 比如说A=[1,2,3;4,5,6;1,2,3], 那么unique(A,'rows')=[1,2,3;4,5,6]; 综上,如果x=[1 1 1 2 2 2 3 3 3 3 3], 那么unique(x)=[1,2,3].

茹桦庾1637关于C++容器中的unique函数一个神奇发现 -
索饲生18875822893 ______ 1、nique()函数是将重复的元素折叠缩编,使成唯一. 2、unqiue_copy()函数是将重复的元素折叠缩编,使成唯一,并复制到他处.这 两个函数的剔除字符原理是,看当前字符与他前一个字符是否相同,如果相同就剔除当前字符,如果不同就跳转到下一个字符.所以在求一个字符串的字符集的时候 要先把字符串排个序再调用上面两个函数剔除重复字符,获取字符集. 3、范例:

茹桦庾1637matlab中有哪些有趣的命令 -
索饲生18875822893 ______ unique函数,可以把不相同的元素成分提取出来. 比如 a=[1;2;3;4;5;1;3;2;1;3;4;2;1];[b,n,m]=unique(a);b = 1 2 3 4 5n = 1 2 3 4 5m = 1 2 3 4 5 1 3 2 1 3 4 2 1这里很好玩,有: b(m)=a a(n)=b

茹桦庾1637excel中如何把函数输出来的值只显示一次 -
索饲生18875822893 ______ 是什么函数输出的值只显示一次? 如果是随机函数RAND()或者是RANDBETWEEN(1,20) ,那么就取消“公式”选项下“计算选择”的“自动”,改成“手动”.

茹桦庾1637R语言中,unique和duplicate的区别是什么? -
索饲生18875822893 ______ unique返回对象的不同取值,如“unique(c(1,1,2,3)) ”返回1 2 3 duplicated 判断对象的每个取值是否重复,如“duplicated(c(1,1,2,3)) ”返回 FALSE TRUE FALSE FALSE ,其中T对应的为重复的值.【R语言】 R是用于统计分析、绘图的语言...

茹桦庾1637急!在matlab中怎样求一个矩阵中不同元素个数?谢 -
索饲生18875822893 ______ 用自带得unique函数 >> unique([1 2 3 5 2 3 5 3 2]) ans = 1 2 3 5

茹桦庾1637c++,如何统计一个数组中重复元素的个数(数组中只有一组重复) -
索饲生18875822893 ______ #include "stdafx.h"#include <map>#include <iostream> int _tmain(int argc, _TCHAR* argv[]) { int vec[] = { 1, 2, 3, 4, 5, 6, 7, 8, 1, 1 }; std::map<int, int> key_counts; for(int i = 0; i < sizeof(vec) / sizeof(int); i++) key_counts[vec[i]]++;//利用map容器...

茹桦庾1637UNIQUE约束的字段能不能接受空值
索饲生18875822893 ______ 同一具有UNIQUE约束的列或者行,可以允许只有一个空值,就是相当于,这个具有空值的行或者列可以用空值来和其他非空值行或者列区别. 而约束中的PRIMARY KEY,不能允许有空值.它来定义基本表的主键,起唯一标识作用,值不能是NULL,不能重复,以此来保证实体的完整性.

茹桦庾1637matlab矩阵里有很多有相同值的元素,如何剔除多余的,每个值只留一个元素 -
索饲生18875822893 ______ 你可以看下diff()这个函数,把返回的值当逻辑值用.这样比循环快很多,如果数据量小的话,循环找也用不了几微秒.应该有更好的办法,抛砖引玉……

茹桦庾1637在一个场景里若有多个脚本,只允许有一个脚本使用唯一数作参数 -
索饲生18875822893 ______ 设置Unique Number的Start = 1,Block size per Vuser = 100时,表示每个用户分配100个数字,第一个用户从1开始.即,假如有3个用户,则: VUser1 1 ~ 100 VUser2 101 ~ 200 VUser3 201 ~ 300 该设置相对整个场景有效,即假如场景设置为...

(编辑:自媒体)
关于我们 | 客户服务 | 服务条款 | 联系我们 | 免责声明 | 网站地图 @ 白云都 2024