2017-06-29 62 views
0

我想从excel文件中计算一系列数字的中位数。 我的Excel电子表格如下:计算excel文件的中位数

CELLNOUN 9.32 
CELLNOUN 10.62 
CELLNOUN 8.42 
CELLNOUN 10.64 
CELLNOUN 11.51 
CELLNOUN 12.01 
CELLNOUN 8.83 
CELLSNOUN/CELLNOUN 9.53 
CELLSNOUN/CELLNOUN 9.21 
CELLNOUN/CELLSNOUN 10.76 
CELLNOUN/CELLSNOUN 7.01 
CELLSNOUN/CELLNOUN 10.21 

PLANTNOUN/PLANTSNOUN 3.62 
PLANTNOUN/PLANTSNOUN 3.38 
PLANTSNOUN/PLANTNOUN 3.92 
PLANTSNOUN/PLANTNOUN 3.24 
PLANTNOUN/PLANTSNOUN 3.83 
PLANTNOUN/PLANTSNOUN 3.24 
PLANTSNOUN/PLANTNOUN 3.00 
PLANTSNOUN/PLANTNOUN 1.80 

... 

在电子表格中,每一组的话已经被一个空白行分开,但是项目的每一组数字各不相同,像CELLNOUN/CELLSNOUN有12项,但PLANTNOUN /有8个条目。这些单词后面的数字实际上就是这些单词的出现次数。我想找出CELLNOUN/CELLSNOUN,PLANTNOUN/PLANTSNOUN等事件的中位数,使用Regex而不是在Excel中使用MEDIAN函数来完成它,因为我拥有数千套这样的套件,我无法做到这一点在Excel上逐一进行。但如果你知道在Excel上更快的方式,请咨询。

非常感谢。

+0

Vicky给出一个小测试示例以及实际答案应该是一个好主意。我们无法看到森林的木材,或者我应该在这里说细胞。看看https://stackoverflow.com/help/how-to-ask – micstr

回答

0

使用阵列式如下所示,并按下ctrl+shift+enter使其数组公式:

=MEDIAN((IF($A$1:$A$20=A1,$B$1:$B$20))) 

通过应用相同的公式的所有小区请参考下面的图像中的公式栏适用于所有的细胞 enter image description here

1

首先,从数据集中删除空行,然后用Insert> Table或Ctrl-T创建Excel表。使用Excel表格对象时,当将更多数据添加到表格时,引用该表格的所有函数和命令都会捕获。

现在您可以使用“插入”>“数据透视表”从源数据创建数据透视表。如果将第一列字段拖动到行区域中,那么您将在该源数据列中具有唯一值列表。如果需要,可以将值列拖动到数据透视表的值区域。现在,这应该类似于此屏幕截图:

enter image description here

我不知道,如果你知道你的类别,即带或不带“S”的不同拼写。数据透视表揭示了它们全部。

开箱时,Excel数据透视表不提供位数作为聚集的一个选项,但您可以使用此方法概述

http://www.myonlinetraininghub.com/calculating-median-in-pivottables

计算中位数。

确切的做法取决于您是否使用数据透视表或Power Pivot,因此请查看文章。