在有多行数据的情况下,返回excel中的中间值

在Excel中,如何在有多行和多列的情况下返回一组数据的中间值? 我有一组数据,其中第一列包含参考编号,第二列包含多天的读数列表。 如何使用公式计算每个参考数字的中位数值?

number volume 1 3072 1 2304 1 2016 1 2496 1 2144 1 2528 1 3312 1 3360 1 2976 1 2768 1 2688 1 3040 1 3008 1 2560 2 574 2 574 2 574 2 574 2 576 2 574 2 575 2 574 2 576 2 574 2 574 2 574 2 574 2 574 3 2880 3 2880 3 2912 3 2976 3 1536 3 288 3 2976 3 2944 3 2880 3 1536 3 2976 3 1536 3 2880 3 2880 4 2267 4 2267 4 2267 4 2267 4 2267 4 2267 4 2268 4 2267 4 2267 4 2267 4 2267 4 2267 5 800 5 800 5 1984 5 416 5 416 5 416 5 416 5 416 5 416 5 416 5 416 5 416 5 416 5 1984 6 800 6 832 6 832 6 832 6 800 6 832 6 832 6 832 6 832 6 832 6 832 6 832 6 832 6 832 

参考数字是A列,读数是B列。在这个例子中,我只用了六个参考数字,但是我的实际数据有几百个。

考虑数组公式

 =MEDIAN(IF($A$2:$A$83=ROWS($1:1),$B$2:$B$83)) 

select一个单元格,input公式并复制下来:

在这里输入图像说明

数组公式必须使用Ctrl + Shift + Enterinput,而不仅仅是Enter键。

试试这个数组公式:

 =MEDIAN(IF(A:A=1,B:B)) 

这是一个数组公式,并且必须用Ctrl-Shift-Enter确认。

对于非CSEarrays公式,正常input,如果您有2010或更高版本,则使用以下命令:

 =AGGREGATE(17,6,(B:B/(A:A=1)),2) 

其中1是参考号码。 您可以通过添加单元格引用使其变为dynamic,以便单元格发生变化,答案也会变化。