通过 Power BI 视觉对象识别离群值

已完成

离群值是数据中的一种异常类型 - 根据历史平均值或结果来看,它是你不期望出现或令你惊讶的值。 你需要识别离群值以隔离与其他数据点显著不同的数据点,然后采取措施调查存在差异的原因。 此分析的结果可能会对业务决策产生巨大影响。

假设你要分析发货仓库的数据。 你注意到,特定产品类别的订单数上升到了平均值以上。 你首先想要确定该产品的类别。 然后要询问几个有关离群值的问题:

  • 当天是否出现了高于平均值的发货数量?

  • 此异常是否发生在特定的仓库中?

  • 是否是单个事件导致该特定类别出现了订单量上升?

  • 上个月、上个季度或往年其他日子是否出现过此事件?

Power BI 使你能够识别数据中的离群值,但你需要首先确定构成离群值的逻辑。 可以围绕视为离群值的内容使用触发器点(如计算)。

识别离群值的过程涉及将数据细分为两个组:一个组是离群值数据,另一个组不是。 可以使用计算列识别离群值,但在刷新数据之前,结果是静态的。 识别离群值更好的方法是使用可视化效果或 DAX 公式,因为这些方法将确保结果是动态的。

识别数据中的离群值后,你可以使用切片器或筛选器突出显示这些离群值。 此外,还可以将图例添加到视觉对象中,以便可以将离群值与其他数据区分开来。 随后可以钻取离群值数据以进行更详细的分析。

使用视觉对象识别离群值

用于识别离群值的最佳视觉对象是散点图,它显示两个数值之间的关系。 散点图显示大型数据集中的模式,因此非常适合用于显示离群值。

将散点图添加到 Power BI 报表中时,需要分别将相关字段放入“X 轴”和“Y 轴”两个部分中。 在本示例中,“已装运订单”字段位于 X 轴上,“订单数量”字段位于 Y 轴上。

添加字段来填充散点图的屏幕截图。

视觉对象将根据所选字段进行更新以显示数据,你能够清楚地发现该数据中的离群值(它们是远离数据群的独立项)。

包含离群值的散点图的屏幕截图。

现在可以识别数据中的离群值,你便可以调查其存在的原因并采取纠正措施。

使用 DAX 识别离群值

可以使用 DAX 创建一个度量值,用于识别数据中的离群值,如以下公式所示:

Outliers =
CALCULATE (
    [Order Qty],
    FILTER (
        VALUES ( Product[Product Name] ),
        COUNTROWS ( FILTER ( Sales, [Order Qty] >= [Min Qty] ) ) > 0
    )
)

Order Qty 是 Sales 表中的一个度量,Min Qty 指 Sales 表中的最低订单数量

创建了新离群值度量值后,可以使用分组功能将产品分组为各个类别,如同之前创建直方图时那样。 随后需要如同上一部分中那样添加散点图视觉对象,因为这是用于显示离群值的最佳可视化效果选项。 添加了散点图后,使用与 DAX 公式和离群值度量值相关联的字段来填充它。

选择要在散点图中使用的离群值逻辑字段的屏幕截图。

在散点图中,你能够识别数据中的离群值。 随后可以调查其存在的原因并采取纠正措施。

用于填充离群值的散点图的屏幕截图。