通过在Excel中的一天中的特定时间周围排除数据来平均

时间:2015-01-18 18:06:27

标签: excel

我有一整小时的一小时测量数据。时间差在A栏。

我试图通过在6,7和8 AM排除所有点来找到一种简单的方法来平均数据。但是,由于这些点在数据中弹出了365次,因此我在应用averageifs等函数时遇到了问题。

还有其他办法吗?

以下是两列的示例,第一列中的时间戳和第二列中的数据。

10/25/13 0:00   186.7583777
10/25/13 1:00   181.5850511
10/25/13 2:00   182.5474936
10/25/13 3:00   182.7110036
10/25/13 4:00   182.9423479
10/25/13 5:00   183.4864833
10/25/13 6:00   182.4676709
10/25/13 7:00   181.2562128
10/25/13 8:00   183.1540795

3 个答案:

答案 0 :(得分:1)

您可以使用数组公式来实现,但我可能会将此公式放在C列中:=if(or(hour(A:A)<6,hour(A:A)>8),B:B,"")将该公式一直向下拖动,然后将此公式放在单元格D1 =average(C:C)中想要查看其他时间,只需更改C列中的公式。

答案 1 :(得分:1)

试试这个:

=SUMPRODUCT((HOUR(A1:A8784)<>6)*(HOUR(A1:A8784)<>7)*(HOUR(A1:A8784)<>8)*B1:B8784)/SUMPRODUCT((HOUR(A1:A8784)<>6)*(HOUR(A1:A8784)<>7)*(HOUR(A1:A8784)<>8)*(B1:B8784<>""))

选择范围参考,因为366天是8784小时;如果您的数据不是从A1开始,您可能需要更改它们;或者如果你在一个专栏中平均超过一年。

答案 2 :(得分:0)

像这样的数组公式也可以使用

=AVERAGE(IF((HOUR(A2:A1000)<6)+(HOUR(A2:A1000)>8),IF(A2:A1000<>"",B2:B1000)))

CTRL + SHIFT + 输入

根据需要调整范围,但最好不要在此公式中使用整列