我有两列:
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个实例的平均值。
同样,我会感谢任何帮助,提示,链接。这让我发疯了。
答案 0 :(得分:0)
在单元格C3中尝试以下公式:
=IFERROR(SUMIFS(B:B,A:A,"<"&A3,A:A,">="&A3-10)/COUNTIFS(A:A,"<"&A3,A:A,">="&A3-10),0)
SUMIFS
将得到秒数为的所有值的总和:
此总和除以使用相同标准找到的行数。
如果现在出现错误(更具体地说,当COUNTIFS
返回0时,您将获得#DIV/0!
),您只需获得0而不是错误。