Excel中。如何计算重复细胞的数量?

时间:2015-05-28 16:14:52

标签: excel

我需要在Excel中编写过滤数据。如何计算重复细胞的数量?

实施例 我在列

中有数据
    0
    0
    1
    0
    1
    1
    0
    1
    1
    1
    0
    1
    1
    1
    1

输出

Count 1 = 10
Count 1;1 = 4
Count 1;1;1 = 2 
Count 1;1;1;1 = 1 

2 个答案:

答案 0 :(得分:3)

使用A1:A15中的值以及您要考虑的连续1的数量,例如: 3,在B1中,这个数组公式** 在C1:

=SUM(INT(FREQUENCY(IF(A$1:A$15=1,ROW(A$1:A$15)),IF(A$1:A$15=0,ROW(A$1:A$15)))/B1))

向下复制以给出在B2,B3等中考虑的连续1的数量变化的类似结果。

作为一个如何操作的例子,使用给定的原始数据和B1 = 2,我们可以看到公式将成为:

=SUM(INT(FREQUENCY({FALSE;FALSE;3;FALSE;5;6;FALSE;8;9;10;FALSE;12;13;14;15},{1;2;FALSE;4;FALSE;FALSE;7;FALSE;FALSE;FALSE;11;FALSE;FALSE;FALSE;FALSE})/B1))

现在应该清楚选择 data_array bins_array 的IF语句的原因,每个元素中的元素集合是另一个元素的补充。

因此,当我们将这些数组传递给FREQUENCY时,我们获得的输出包含每个分组中的1个数,以上解析为:

=SUM(INT({0;0;1;2;3;4}/B1))

其余的相当简单。

此致

**数组公式的输入方式与'标准'相同。公式。您只需按住CTRL和SHIFT键,然后按ENTER键,而不是按ENTER键。如果您已正确完成,您会注意到Excel在公式周围放置了大括号{}(尽管不要尝试自己手动插入这些括号)。

答案 1 :(得分:1)

步骤1:将单元格中的所有值作为字符串连接到一个单元格中(对于此示例,我将假设您的数据位于A列中,并且连接位于单元格B1中)。 1(a)在单元格B1中,输入公式=CONCATENATE(A1,A2,A3,...,A_)。如果有少数细胞,这是非常长的啰嗦 1(b)或者,快速谷歌搜索产生了this文章,该文章提供了一种相当快速(但手动)的方式来连接大范围的值。

步骤2:计算上面串联中较小字符串的出现次数 2.1将要搜索的字符串放在单元格中(对于此示例,我将假设单元格C1)
2.2在单元格D1中,输入公式=(LEN($B$1)-LEN(SUBSTITUTE($B$1,C1,"")))/LEN(C1)。这可以通过搜索字符串并用空白("")替换目标字符串(C1)的每个匹配项并测量长度差来实现。
2.3对要搜索的每个值重复

以上示例中的结果值:

       A:   B:                 C:      D:
 1 :   0    001011011101111    1       10
 2 :   0                       11      4
 3 :   1                       111     2
 4 :   0                       1111    1
 5 :   1    
 6 :   1    
 7 :   0    
 8 :   1    
 9 :   1    
 10:   1    
 11:   0    
 12:   1    
 13:   1    
 14:   1    
 15:   1