Powerbi 如何获取Power BI中行主组总数的子组百分比?
我意识到这个问题一点也不自明,下面有一个详细的解释。我试图在Power BI中创建一个堆叠条形图,它基本上显示了两个子组在各自行上占其总数的百分比。我在下面附上了一张照片,展示了它的样子 a和b是每个人的相同项目。该报告是每月一次的,因此将根据上个月的数据进行过滤。总计是跨越三个类别的a+b总计;这些是我在总计栏中用绿色突出显示的重要项目。我想用3类中的项目除以它们各自的行/组总数,然后用绿色的项目除以总计列中绿色的项目,制作堆叠条形图 下面是我为获得这些结果而手动执行的操作。我把绿色的项目,做另一个表,然后简单地把它们分开,得到百分比 然后,我插入一个堆叠条形图,并选择人员和2个具有百分比值的分组。这张图是我想要的最终结果 我尝试了至少8次迭代,但都没有成功。Power BI对我来说有些陌生,我很难将我在Excel中所知道的如何操作转换为Power BI 我真诚地感谢你给我的任何帮助 找到了Powerbi 如何获取Power BI中行主组总数的子组百分比?,powerbi,Powerbi,我意识到这个问题一点也不自明,下面有一个详细的解释。我试图在Power BI中创建一个堆叠条形图,它基本上显示了两个子组在各自行上占其总数的百分比。我在下面附上了一张照片,展示了它的样子 a和b是每个人的相同项目。该报告是每月一次的,因此将根据上个月的数据进行过滤。总计是跨越三个类别的a+b总计;这些是我在总计栏中用绿色突出显示的重要项目。我想用3类中的项目除以它们各自的行/组总数,然后用绿色的项目除以总计列中绿色的项目,制作堆叠条形图 下面是我为获得这些结果而手动执行的操作。我把绿色的项目,
=DIVIDE(COUNTA(Categories)、CALCULATE(COUNTA(Categories)、ALLEXCEPT(Table、Person、Month))正如我在上面的评论中提到的,数据结构在示例数据中似乎不是实际格式。如果我猜你的样本数据在下面的结构- 现在,选择列person和ab,并应用unpivot其他列,如下所示- 现在,将属性列重命名为类别,最终结果如下所示- 现在,单击“关闭并应用”按钮返回报告,并创建以下3个度量-
percentage_a =
VAR person_a_cate_3_sum =
CALCULATE(
SUM(your_table_name[Value]),
FILTER(
ALLEXCEPT(
your_table_name,
your_table_name[person]
),
your_table_name[category] = "category3"
&& your_table_name[ab] = "a"
)
)
VAR person_wise_total =
CALCULATE(
SUM(your_table_name[Value]),
ALLEXCEPT(your_table_name,your_table_name[person])
)
RETURN person_a_cate_3_sum/person_wise_total
最后,如果我们在表格visual中添加上述所有度量,则输出如下所示-
现在为条形图创建以下内容度量值
percentage_a_b =
VAR person_a_cate_3_sum =
CALCULATE(
SUM(your_table_name[Value]),
FILTER(
ALLEXCEPT(
your_table_name,
your_table_name[person],
your_table_name[ab]
),
your_table_name[category] = "category3"
)
)
VAR person_wise_total =
CALCULATE(
SUM(your_table_name[Value]),
ALLEXCEPT(
your_table_name,
your_table_name[person]
)
)
RETURN person_a_cate_3_sum/person_wise_total
现在按如下所示配置条形图-
这是最终输出-
人约翰和“a”和“b”是否在同一列中?如果没有,请显示示例数据的实际数据结构。
calculating_total =
CALCULATE(
SUM(your_table_name[Value]),
ALLEXCEPT(your_table_name,your_table_name[person])
)
percentage_a_b =
VAR person_a_cate_3_sum =
CALCULATE(
SUM(your_table_name[Value]),
FILTER(
ALLEXCEPT(
your_table_name,
your_table_name[person],
your_table_name[ab]
),
your_table_name[category] = "category3"
)
)
VAR person_wise_total =
CALCULATE(
SUM(your_table_name[Value]),
ALLEXCEPT(
your_table_name,
your_table_name[person]
)
)
RETURN person_a_cate_3_sum/person_wise_total