计算现有表中的重复出现次数

问题描述 投票:2回答:2

我有15个项目,我希望计算它在一系列时间内重复多少次。在该时间段内以1突出显示。根据附图,蓝色区域是数据,黄色是我希望获得的结果。

例如。在事件5中,这重复当前记录 - 三次,当前记录 - 两次两次等。我也不想按照观察项目14计算当前wekks项目两次。黄色的结果已经手动计算,唯一的选择是根据我的知识做个别的IF陈述......

enter image description here

是否有自动执行此操作的公式?我曾尝试使用数组和匹配项来检查重复,但无法解决。

更新澄清:在当前发生5 - Obs 1,6和15出现在事件4(重复当前-1或出现4 - 三次),Obs 5和8出现在事件3(重复当前-2或出现) 4 - 两次)。 (事件只是时间点。观察可能是人们被观察到做某事 - 次数无关紧要,这只是一个真或假的结果)

观察发生4,Obs 6和9(重复电流-3)或发生1两次(我的坏我只指定了1次可能引起混淆)。

我希望公式在找到下一个最近发生的事件后停止搜索先前发生的事件,例如,一旦在事件2中发现重复,事件3中的事件14应停止查找。

arrays excel match repeating
2个回答
0
投票

您可以使用中间计算的单元格,如果您愿意,可以稍后隐藏。

在观察和重复之间插入15列(每次观察1个)。

在第一个插入的单元格中,为个别重复观察创建公式:

=AND(ISNUMBER(B3),B3=B4)

即,要计为重复,观察必须是一个数字,并且与其正下方的单元格相同。

水平复制此公式,以便计算所有15个观察值。

然后在右边创建一个公式来计算匹配的观察值

=COUNTIF(R3:AF3,TRUE)

现在向下复制所有出现的公式。

对于current-2,您可以直接在下方和左侧引用单元格,并将其复制到下方。

为清楚起见,我遗漏了你的最后一个要求,一旦找到匹配就停止搜索。为此,您需要扩展中间公式以将其考虑在内。

Example calculation


0
投票

为了扩展爱德华的答案,我使用以下公式作为中间公式:

=IF(AND(ISNUMBER(C7);C7=C8;C8=C9;C9=C10);"-3";IF(AND(ISNUMBER(C7);C7=C8;C8=C9);"-2";IF(AND(ISNUMBER(C7);C7=C8);"-1";"")))

然后使用Countif(R3:AF3;"-3")计算-3的数量。

通过在-3处开始If约束并继续前进,公式会在找到最后一个匹配时自动停止。

© www.soinside.com 2019 - 2024. All rights reserved.