我试图从未过滤的总数(而不是过滤后的总数)计算总数的百分比。所以我有四行这样的未过滤数据:
Column1 Column2 Column3
------- ------- -------
Blah 1 17%
Blah 2 33%
Blah 1 17%
Blah 2 33%
Total 6 100%
我想按第 2 列的值大于 1 进行过滤,因此我正在寻找百分比列来根据 6 计算百分比,但当我进行过滤时,它只对 4 进行过滤。所以这就是我要找的
Column1 Column2 Column3
------- ------- -------
Blah 2 33%
Blah 2 33%
Total 4 66%
但这就是我得到的:
Column1 Column2 Column3
------- ------- -------
Blah 2 50%
Blah 2 50%
Total 4 100%
有什么方法可以在字段设置下拉菜单中完成我想要的操作,或者可以使用计算列来完成吗?
答案1
如果您使用数据创建了数据透视表,请使用Column 1
和Column 2
作为行标签以及Column 3
作为值,它将自动为您计算小计和总计值。
左侧表格显示您的基础数据。中间表格显示未过滤的数据。右侧表格显示过滤后的数据 >1(未应用百分比格式)。
答案2
无论您如何使用数据透视表对数据进行切片,数据集的总计都保持不变,因此您可以使用计算字段计算该项目的百分比同时保持总数不变。
去做这个:
- 记下源数据集的总计,在您的示例中,这是
6
- 前往字段、项目和集合功能区栏上的项目并选择计算字段...
- 输入列的名称,例如“总计的固定百分比”
- 输入一个计算,对数据集的总计进行硬编码,但使用对值字段的字段引用来计算百分比。在您的示例中,这将是
Col2 / 6
这种方法的好处是,百分比适用于您在数据透视表中使用的任何行分组,而无需在原始数据集中计算每个项目的百分比。在您的示例中,这意味着您可以删除Col3
。
答案3
创建一个字段,计算第 1 列的总数,不受过滤器设置的影响:
B2 = SUM(Table1[Column2])
(我建议将此单元格放在表格上方,以便通过粘贴添加行不会造成任何麻烦。)
通过以下公式定义百分比列(Column3):
=[@Column2]/$B$2