![Excel Power Pivot 中两个平均值之间的差异](https://linux22.com/image/1575178/Excel%20Power%20Pivot%20%E4%B8%AD%E4%B8%A4%E4%B8%AA%E5%B9%B3%E5%9D%87%E5%80%BC%E4%B9%8B%E9%97%B4%E7%9A%84%E5%B7%AE%E5%BC%82.png)
我在 Excel 中有以下数据表,显示了 2018 年 1 月 1 日、2 日和 3 日我在一天的前 12 小时内收集了多少个苹果,以及在一天的后 12 小时内收集了多少个橙子:
我想知道我平均每天收集多少个苹果和橘子,因此制作了以下数据透视表:
然后,我想清楚地看到每天我收集的橙子比苹果多多少。因此,我制作了一个计算字段来计算“苹果平均值”和“橙子平均值”列之间的差异。我在计算字段中尝试了以下 2 个解决方案作为公式:
- Delta 平均值 = 苹果和橘子
- Delta 平均值 2 = AVERAGE(苹果)-AVERAGE(橙子)
但是,这两个公式都没有返回我希望的平均值差。相反,我得到的是所有苹果和所有橘子的总和差,这对我来说并不感兴趣:
有人知道为什么上述方法不起作用吗?有没有办法在 Pivot 中计算这种平均值差异?
要明确的是,我想要的结果是:
01/01/2018 0.5
02/01/2018 2.5
03/01/2018 2.5
我知道还有其他比 Pivot 更简单的方法可以做到这一点,但我想在 Power Pivot 中做到这一点,以便使用更多数据轻松更新它。
答案1
一般来说,使用平均值是很危险的,因为有很多方法会惹上麻烦。您不能像组合源值那样组合平均值。在您的示例中,您实际上并没有使用您描述的数字。
你把每一天划分为四个 6 小时的时间段。你在两个时间段收集苹果,在另外两个时间段收集橘子。如果你想比较日期,时间段是人为划分的。1 月 1 日,你收集了 4 个苹果和 5 个橘子;1 月 2 日,4 个苹果和 9 个橘子;1 月 3 日,5 个苹果和 10 个橘子。在日级别,没有平均值,只有总数。
您在第一个数据透视表中计算的平均值是一个奇怪的、人为的数字;它们甚至不是每期的平均值。它们是采摘水果的选定时期的每期平均值。要获得每日平均值,您需要对所有天的每日总数进行平均,以得出每种水果的总平均值,这对您的目的没有用。
如果您想比较水果和天数,请使用每种水果的天总数。然后您可以使用简单的减法进行比较。您可以在数据透视表中通过选择“总和”而不是“平均值”作为聚合来执行此操作。然后,您的所有结果都将有意义。
话虽如此,如果您只是对数据透视表中“按水果按天计算相关收集期平均值”的机制感兴趣,我们可以这样做。您没有在数据透视表中显示您使用的公式,但我可以从显示的内容中猜测出来。
看起来您的第一个“增量平均值的平均值”列正在对实际计数进行减法,然后按天进行汇总。您的第二个增量列产生了相同的结果。这是因为您的数据透视表正在对每个单独的数字进行平均(单个数字的平均值是相同的数字),然后进行减法并按天进行汇总。
当您为数值定义自己的数学运算时,数据透视表会在数据级别执行其工作,然后进行聚合。您无法通过在数据透视表中一步完成此操作来获得所需的结果。您需要在第一个数据透视表的结果基础上进行连续计算。最简单的方法是创建第一个数据透视表,如示例所示。这会将所有数据汇总起来,这是您想要完成的,以使其可更新。然后在相邻列中对数据透视表外的结果进行减法。