Google sheets 如何创建一个数组公式来计算一行中三个不同值的中值?
如何创建一个数组公式来计算google工作表中一行中三个不同值的中值? 例如,我想为中值公式做一个数组Google sheets 如何创建一个数组公式来计算一行中三个不同值的中值?,google-sheets,google-sheets-formula,array-formulas,median,Google Sheets,Google Sheets Formula,Array Formulas,Median,如何创建一个数组公式来计算google工作表中一行中三个不同值的中值? 例如,我想为中值公式做一个数组 =ARRAYFORMULA(MEDIAN(A2:A,$B$2,$C$2)) 在哪里 A2:开始日期-2020-07-22 10:00 B2:开始时间-8:00 C2:结束时间-17:30 中位数(A2:A,B2,C2)的结果是10:00,但数组公式不起作用。(结果是00:00:00) 是否可以为中位数创建一个数组?或者有没有其他方法可以做到这一点?平均值和中位数不一样。平均值本质上是平均值
=ARRAYFORMULA(MEDIAN(A2:A,$B$2,$C$2))
在哪里
A2:开始日期-2020-07-22 10:00
B2:开始时间-8:00
C2:结束时间-17:30
中位数(A2:A,B2,C2)的结果是10:00,但数组公式不起作用。(结果是00:00:00)
是否可以为中位数创建一个数组?或者有没有其他方法可以做到这一点?平均值和中位数不一样。平均值本质上是平均值,而中值是集合中的“最中间”值:
=平均值(2,1,9)
返回4[即,(1+2+9)/4]
>=中位数(2,1,9)< /代码>返回2(即,如果所有数字从最低到最高排列)中的值
如果只需要比较三列,就可以使用某种“暴力”值对值比较数组。例如,在D2中:=ArrayFormula(IF(((A2:A-INT(A2:A)<B2:B)*(A2:A-INT(A2:A)>C2:C))+((A2:A-INT(A2:A)>B2:B)*(A2:A-INT(A2:A)<C2:C)),A2:A-INT(A2:A),IF((B2:B<(A2:A-INT(A2:A))*(B2:B>C2:C))+(B2:B>(A2:A-INT(A2:A))*(B2:B<C2:C)),B2:B,C2:C)))
=ArrayFormula(如果((A2:A-INT(A2:A)C2:C))+((A2:A-INT(A2:A)>B2:B)*(A2:A-INT(A2:A)(A2:A-INT(A2:A))*(B2:B平均值和中位数不相同。平均值基本上是平均值,而中位数是集合中“最中间”的值:
=平均值(2,1,9)
返回4[即,(1+2+9)/4]
>=中位数(2,1,9)< /代码>返回2(即,如果所有数字从最低到最高排列)中的值
如果只需比较三列,则可以使用某种“暴力”值对值比较数组。例如,在D2中:
=ArrayFormula(IF(((A2:A-INT(A2:A)<B2:B)*(A2:A-INT(A2:A)>C2:C))+((A2:A-INT(A2:A)>B2:B)*(A2:A-INT(A2:A)<C2:C)),A2:A-INT(A2:A),IF((B2:B<(A2:A-INT(A2:A))*(B2:B>C2:C))+(B2:B>(A2:A-INT(A2:A))*(B2:B<C2:C)),B2:B,C2:C)))
=ArrayFormula(如果((A2:A-INT(A2:A)C2:C))+((A2:A-INT(A2:A)>B2:B)*(A2:A-INT(A2:A)(A2:A-INT(A2:A))*(B2:B平均值的ArrayFormula:
=ARRAYFORMULA(TEXT(QUERY(TRANSPOSE(QUERY(TRANSPOSE(N(A2:C*1)),
"select "&TEXTJOIN(",", 1, IF(A2:A="",,
"avg(Col"&ROW(A2:A)-ROW(A2)+1&")"))&"")),
"select Col2"), "hh:mm"))
平均值的排列公式:
=ARRAYFORMULA(TEXT(QUERY(TRANSPOSE(QUERY(TRANSPOSE(N(A2:C*1)),
"select "&TEXTJOIN(",", 1, IF(A2:A="",,
"avg(Col"&ROW(A2:A)-ROW(A2)+1&")"))&"")),
"select Col2"), "hh:mm"))
A2:A是哪种范围参考?这是打字错误吗?另外,A2是否有日期和时间部分?请更好地描述您的数据。数组公式不支持中间值。您是否考虑过使用平均值而不是中间值?@teylyn i A2:A是打字错误。A2有日期和时间部分。2020-07-22是日期,10:00是时间。@player0 i d不要考虑平均值。所以我会尝试使用它。亚当,如果我从你的第一个问题中想起A2,你只关心时间部分。这里可能包含日期部分。你有MOD(A2,1)。,那么你真的想要三个时间值的中间值,或者说平均值,不是吗?理想情况下是一个数组公式,这样它就可以填充整个列…什么样的范围引用是A2:A
?这是一个打字错误吗?另外,A2是否有日期和时间部分?请更好地描述你的数据。数组公式下不支持中间值。你考虑过吗Red使用平均值而不是中位数?@ Tyyyn i A2:A是一个日期和时间部分。2020—07—22是一个日期,10:00是一个时间。@ Prave0我没有考虑平均值。所以我会尝试使用它。亚当,如果我记得从你的第一个问题,对于A2,你真的只关心时间部分。这里可能包含日期部分。你有mod(A2,1),所以你真的想要三个时间值的中间值,或者平均值,不是吗?理想情况下是一个数组公式,这样它就填充了整个列。。。