使用数据透视表计算类别的汇总值的中位数

时间:2019-04-11 22:11:32

标签: excel sum dax powerpivot median

我有关于某些类别(水果,小吃等)的销售$的每小时数据。我想使用表格中的每小时数据显示一个月或一年中每日销售额的中位数。因此,对于每个类别,需要先将小时值相加并创建一个每日值,然后再计算中位数

常规枢轴不提供中位功能。我熟悉Power枢轴,但没有使用过Measurements。我试图使用中位数X函数创建一个度量,但无法使其起作用

2 个答案:

答案 0 :(得分:0)

阿里

创建度量时,您将要使用MEDIAN函数而不是MEDIAN X

如果您要计算表中不存在的列的中值,则为MedianX。

例如,假设我们有Table1,其中有两列Net Revenue和Net Expense。并且该列中的每一行都存在以下3个数据点。

净收入: 2019年1月100 2019年2月300 2019年3月300

净费用: 2019年1月50 2019年2月100 2019年3月50

由于表中没有净利润列,因此可以使用MEDIANX来指定我们要使用的表,然后为不存在的列编写表达式。在上面的示例中,该字段将为= MEDIANX(Table1,[净收入]-[净支出]。这将为NetProfit创建一个中位数度量,即使该列本身在我们的表中不存在。

在您的情况下,由于您正在汇总一列已存在的列,因此可以坚持使用= MEDIAN。

如果您需要更多说明,请告诉我!

最好

布雷特

答案 1 :(得分:0)

首先,您需要将Calendar表添加到数据模型:

Calendar Table Explained

“日历”表中必须包含要对销售进行分组的字段,例如“年月”和“年季度”。

然后,通过日期字段将Calendar表连接到Sales表,以得到如下结构:

enter image description here

使用此数据模型后,创建2个度量(假设您的销售表称为“销售”,日历表称为“日期”)

措施1:

Total Sale = SUM(Sales[Amount])

它将仅计算销售金额之和。

措施2:

Median Monthly Sale = MEDIANX( VALUES(Date[Year-Month]), [Total Sale])

此度量标准将首先按年-月汇总销售额,然后计算总和的中位数。

要获得不同时期的中位数销售额,只需将Year-Month替换为所需的分组级别,例如:

Median Yearly Sale = MEDIANX( VALUES(Date[Year]), [Total Sale])