这参考了[SO问题] Counting unique list of items from range based on criteria from other ranges
Scot Craner建议的公式是:
=SUM(--(FREQUENCY(IF(B2:B7<=25,IF(C2:C7<=35,COUNTIF(A2:A7,"<"&A2:A7),""),""),COUNTIF(A2:A7,"<"&A2:A7))>0))
除了所附快照中显示的这一步骤,我已经能够清楚地理解公式的逻辑和求值。
根据MS Office文档:
FREQUENCY(data_array,bins_array)FREQUENCY函数语法具有
以下参数:Data_array必需。或的数组
引用要为其计数频率的一组值。
如果data_array不包含任何值,则FREQUENCY返回零数组。
Bins_array必需。间隔或指向的数组
您想要将data_array中的值分组的对象。如果bins_array
不包含任何值,FREQUENCY返回中的元素数
data_array。
我很清楚{1; 1; 4; 0;“”;“”)如何进入data_array以及{1; 1; 4; 0; 5; 3}如何进入bins_array。但是它如何求值对{2; 0; 1; 1; 0; 0; 0}来说,我不清楚。
如果有人可以清楚地解释它,将不胜感激。
最佳答案
所以你想知道FREQUENCY({1;1;4;0;"";""},{1;1;4;0;5;3})
评估为{2;0;1;1;0;0;0}
?
问题是bins_array
无需排序即可使FREQUENCY
工作。但是,当然,它必须在内部对bins_array
进行排序,以获得将data_array
中的值分组的间隔。然后将其分组并计数,然后以与bins_array
中的垃圾箱相同的顺序返回计数的数字。
Scores Bins
1 1
1 1
4 4
0 0
"" 5
"" 3
Bins sorted
0 (<=0)
1 (>0, <=1)
1 (>1, <=1) == not possible
3 (>1, <=3)
4 (>3, <=4)
5 (>4, <=5)
(>5)
Bin Description Result
1 Number of scores (>0, <=1) 2
1 Number of scores (>1, <=1) == not possible 0
4 Number of scores (>3, <=4) 1
0 Number of scores (<=0) 1
5 Number of scores (>4, <=5) 0
3 Number of scores (>1, <=3) 0
Number of scores (>5) 0
关于excel - 频率公式评估的中间步骤,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54050483/