我有一些时间值,例如 10:00、8:50、9:45 等(24 小时格式)。我想知道如何计算这 3 个项目的平均值,如果小时总和超过 24 小时(如果更少,那么没有问题)?
谢谢。
谢谢大家。如果只是在单元格中键入值并尝试找到平均值,它会起作用,但如果我使用时间,它会很奇怪,这已经是我计算的结果。这里截图:
与任何其他数值一样(例如,使用 AVERAGE() 函数)。
使用以下格式掩码:
[hh]:mm
如果您想显示超过 24 小时(例如 SUM() 函数)。
计算一组时间或风向列表的平均值可以被视为类似于计算一组向量的平均值(包含方向和大小的值)。因此,有必要将时间值等同于它们在单位圆上的相应位置,得出它们的垂直分量值并将它们相加,就像对任何这种形式的循环群进行“平均”一样。
假设您有两次 23:00 和 01:00,那么正常的平均计算(sumproduct/count)会给您留下不正确的值 12:00 [(23+1)/2] 而不是正确的 24: 00 / 00:00 值。但是,如果您认为 23:00 等于 24 小时圆上的向量 1<345° 并且 01:00 等于 1<15° 您可以获得它们的向量平均值 [cos(345°)+cos(15° ) + i*(sin(345°)+sin(15°))] = 1<360° 一个等于 24 小时周期的 00:00 的值。但请注意,此方法将取消正好相隔 12 小时的时间,例如,如果您只有 01:00 和 13:00,则无法确定平均时间。
那我就给你留下公式(A列中的时间)
TIME_TO_DEGREES COSINE SINE
=(360/24)*(HOUR(A2)+MINUTE(A2)/60) =COS(RADIANS(B2)) =SIN(RADIANS(B2))
=(360/24)*(HOUR(A3)+MINUTE(A3)/60) =COS(RADIANS(B3)) =SIN(RADIANS(B3))
=(360/24)*(HOUR(A4)+MINUTE(A4)/60) =COS(RADIANS(B4)) =SIN(RADIANS(B4))
=(360/24)*(HOUR(A5)+MINUTE(A5)/60) =COS(RADIANS(B5)) =SIN(RADIANS(B5))
[C8] [D8]
COMPONENT AVERAGES =AVERAGE(C2:C7) =AVERAGE(D2:D7)
AVERAGE DEGREES DEGREES_TO_HOUR MAGNITUDE
=ROUND(DEGREES(IF(C8=0,ACOS(C8),
IF(D8=0,ASIN(D8),
ATAN(D8/C8)))),3)
+IF(C8<0,180,0)
+IF(AND(D8<0,C8=0),180,0)
+IF(AND(D8<0,C8>0),360,0) =E8/360 =(C8^2+D8^2)^0.5
在幅度为零的情况下,尝试计算平均时间是不可行的操作。
一种方法是将每个单元格时间转换为seconds,然后平均这些秒数,最后转换为hh:mm:ss 格式
您是否尝试过使用该AVERAGE
功能?
我用你的值在 excel 中测试了它,它给了我正确的平均时间。
简单只需单击单元格(时间)并转换(自动)为 12 小时时间
即,如果您有00:31:24则将其转换为像这样12:31:24 AM的完整日期。
之后,您可以使用平均。