当值缺失时,PowerBI 从表格视觉中过滤行

问题描述 投票:0回答:2

我的数据模型中有两个表以多对一关系链接,在两个方向上进行交叉过滤。

表 A 每个键值一行,表 B 有很多行。

并非表 A 中的所有人都出现在表 B 中。

我想创建一个表格视觉效果,其中列出表 A 中的每个人,以及表 B 中的信息(如果存在)。但是,当我将表 B 中的变量添加到视觉对象时,PowerBI 会自动从表 A 中删除未出现在表 B 中的所有人员,而不是显示缺失值的空单元格。

我在数据模型中得到了什么:

表A

姓名 生日
约翰 1962 年 4 月 2 日
1970 年 11 月 3 日

表B

姓名 宠物
约翰 猫 - 亨利
约翰 狗 - 现货

我想要的视觉效果:

姓名 生日 宠物
约翰 1962 年 4 月 2 日 猫 - 亨利
约翰 1962 年 4 月 2 日 狗 - 现货
1970 年 11 月 3 日

我得到了什么:

姓名 生日 宠物
约翰 1962 年 4 月 2 日 猫 - 亨利
约翰 1962 年 4 月 2 日 狗 - 现货

我的视觉上没有滤镜。

如果我将视觉效果过滤为表 B 中变量的空白/缺失值,我会得到一个空表。

我在这里查看了一些有关将表与缺失数据组合的线程,但它们都是关于在数据模型而不是视觉效果中创建新表。

powerbi
2个回答
2
投票

默认情况下,PowerPivot 执行 INNER 连接。但如果您需要 OUTER 连接,有一个简单的解决方案(但是,如果不需要,请不要使用双向过滤):在表字段列表上转到

Pet
,鼠标右键单击,选择
Show items with no data

enter image description here

这就是你得到的:

enter image description here

也可以直接使用 LeftOuter Join PowerQuery 中的 2 个表:

let
    Source = Table.NestedJoin(
        #"Table A", {"Name"}, 
        #"Table B", {"Name"}, 
        "Table B", JoinKind.LeftOuter),
    #"Expanded Table B" = Table.ExpandTableColumn(
        Source, "Table B", {"Pet"}, {"Pet"})
in
    #"Expanded Table B"

0
投票

此场景还有一个问题: 如何计算“Pet”列中空单元格的数量,或将它们显示在 x 轴值为“空”的图表中?

© www.soinside.com 2019 - 2024. All rights reserved.