Excel 2010 中数据透视表中的中位数?

Excel 2010 中数据透视表中的中位数?

令人惊讶的是,这么古老的应用程序竟然没有这个功能

是否有已知的解决方法?

我指的是可以更改值字段的聚合类型的部分:它有总和、最小值、最大值、平均值等,但没有中位数

答案1

举个简单的例子,您可以使用数组公式而不是数据透视表。

如果源数据在 10:1000 行,源数据的类别标识在 A 列,源数据值在 C 列,所考虑的类别在 G3,则以下数组公式将找到中位数:

{=MEDIAN(IF($A$10:$A$1000=G3,$C$10:$C$1000))}

使用Ctrl+ Shift+提交条目Enter,并向下复制以用于 G4、G5 等类别

答案2

不幸的是,Excel 的数据透视表函数中没有内置任何可以执行此操作的功能。您可以尝试此附加组件虽然。它声称可以做到这一点,但我从未使用过它。

您可以对数据进行中值运算,然后将其包含在数据透视表数据中,但在那时...您知道...该表的意义何在?

答案3

实际上,您可以使用该iserror函数从中位数中排除总行数。例如,如果标签Total rowrow A,而您想要的中位数的数据在row I

=MEDIAN(IF(ISERROR(FIND("Total",$A$5:$A$65535)),I5:I35535))

答案4

如果您的数据透视表很简单(表中没有子总计),那么有一种方法可以计算中位数(或任何公式)。除此之外,没有其他方法可以在数据透视表中优雅地包含中位数计算。

太糟糕了,不能包含附件...我将对我的示例进行快照:

我使用了这里描述的偏移函数: http://www.myonlinetraininghub.com/excel-offset-function-explained 另外,下载工作簿并转到数据透视表选项卡 - 这就是我做示例的地方

这是最终结果 - 参见此处的图片:

在此处输入图片描述

注意:您不能将中位数/偏移公式单元格放在要从中获取中位数的同一列中。此外,偏移允许您从列值减去总计行的值中获取中位数。

不幸的是,当您使用更复杂的数据透视表(即数据透视表中有小计)时,没有优雅的方式来进行中位数(或任何其他)计算。

相关内容