【问题标题】:Count repeating occurrences in existing table计算现有表中的重复出现次数
【发布时间】:2019-02-25 08:21:46
【问题描述】:

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

例如在发生 5 中,这重复当前记录 - 1 三次,当前记录 - 2 两次等。我也不想根据观察项 14 计算当前 wekks 项目两次。黄色的结果是手动计算的,唯一的选择是根据我的知识做单独的 IF 语句......

示例

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

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

查看 Occurrence 4、Obs 6 和 9(Repeats Current -3)或 Occurrence 1 两次(我的错误我只指定了 1 次,这可能会引起混乱)。

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

【问题讨论】:

  • 请阅读How to Ask。此外,还不清楚您的数据如何转换为结果。解释其背后的逻辑。
  • 感谢您的反馈@Luuklag。我希望我已经提供了额外的信息来帮助做出回应。
  • 所以要做到这一点。在 oc.2 中,重复 -1 值应为 2,因为 obs 11 和 14 匹配下面的 1。另外,您的数据总是只有 1 吗?

标签: arrays excel match repeat


【解决方案1】:

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

=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 约束并返回,公式会在找到最后一个匹配项时自动停止。

【讨论】:

    【解决方案2】:

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

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

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

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

    即要计为重复,观测值必须是一个数字并且与紧随其下的单元格相同。

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

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

    =COUNTIF(R3:AF3,TRUE)
    

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

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

    为清楚起见,我省略了您的最后一个要求,即一旦找到匹配项就停止搜索。为此,您需要扩展中间公式以考虑到这一点。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-12-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-16
      • 2018-07-07
      • 2012-06-11
      相关资源
      最近更新 更多