时间回顾计算

时间:2014-10-30 07:48:41

标签: excel spreadsheet

我有两列:

A栏:时间(午夜秒)

B列:值(我创建的任意值)

如何在回顾前一个x秒(A列)的任何时间(行)中找到平均值(B列)?

让我们假设A1 =午夜后的秒数

Seconds after midnight    Value
        0                  27
        2                  29
        6                   2
       16                  29
       20                  19
       24                   4
       34                   2
       40                   1
       44                   4
       54                  12
       64                  12
       71                   3
       81                  30
       91                  21
       92                   1
       93                  27
       97                  12
      104                  30
      112                  25

请注意,时间增量是可变的,所以我不能只查看最后的x行。

具体问题是:

在新列(C列)中,返回最后10秒数据的平均值。

我不知道该怎么做。有人可以帮忙吗?非常感谢。

编辑:

C列的前4行中的输出为:

Seconds after midnight    Value     Result
        0                  27              No values prior to this one
        2                  29         27   Average(B2) 
        6                   2         28   Average(B2:B3)
       16                  29          2   Average(B4)

对于每一行,我占用当前时间(在最后一种情况下为16)...返回x秒(在这种情况下为10秒),然后平均来自该时间范围内所有单元格的值(不是包括当前值。)

我的主要问题是时间计算。当我向前推进时,我不知道如何计算它,随着我们前进,我会继续获得更多实例。如果我们在没有任何新数据点的情况下持续10秒,那么就没有输出了。如果我们在前10秒内得到一个实例,那么输出就是该值。如果我们在前10秒内得到100个实例,我需要返回100个实例的平均值。

同样,我会感谢任何帮助,提示,链接。这让我发疯了。

1 个答案:

答案 0 :(得分:0)

在单元格C3中尝试以下公式:

=IFERROR(SUMIFS(B:B,A:A,"<"&A3,A:A,">="&A3-10)/COUNTIFS(A:A,"<"&A3,A:A,">="&A3-10),0)

SUMIFS将得到秒数为的所有值的总和:

  • 小于A3(在这种情况下小于2)
  • 大于或等于A3-10(即在这种情况下高于-8)

此总和除以使用相同标准找到的行数。

如果现在出现错误(更具体地说,当COUNTIFS返回0时,您将获得#DIV/0!),您只需获得0而不是错误。