在 Power Bi 中创建新度量 - SUM() 和 AVERAGE() 聚合之间的差异

Creating a new measure in PowerBi - difference between aggregating by SUM() and AVERAGE()

这里完全是菜鸟,所以我敢打赌这是一个愚蠢的问题,但我似乎无法弄清楚。我是 PBI 的新手,我一直在努力创建新的衡量标准。我尝试创建的新度量的 DAX 是:

total_size_gb = 'index-name'[statistics.storage_size]+'index-name'[statistics.repository_size]

我的数据源是 Elastic Search,我正在查看的文档具有以下格式 - 每个 id 都有一个 storage_size 和一个 repository_size:

{
 "id": 1,
 "statistics": {
            "storage_size": 5,
            "repository_size": 10
        },
 ...
}

出于我无法理解的原因,我被迫使用 SUM() 或 AVERAGE() 等聚合公式,因此我的公式如下所示:

total_size_gb = SUM('index-name'[statistics.storage_size])+SUM('index-name'[statistics.repository_size])

尝试创建一个包含所有 ID 和 storage_size + repository_size 的 table,但如果我使用 SUM() 或 AVERAGE(),结果似乎会有所不同。

你能帮我理解为什么吗?

谢谢, 亚历克斯

您的数据看起来像 JSON 格式。当您将 JSON 加载到 Power BI 中的查询编辑器时,它将转换为 table。仍然在查询编辑器中,然后您可以添加一个自定义列来添加存储大小和存储库大小(无论您出于何种原因想要这样做。似乎没有多大意义)。

在我看来,您似乎非常不必要地在字段名称周围包装了一个 SUM() 函数。这是我在 Excel 看到人们做的坏习惯。如果您想要逐行结果,则不需要执行 SUM()。只需使用“+”运算符将您要添加的项目相加即可。

然后将查询加载到数据模型中。之后,您可以使用 DAX 计算度量。总和平均整列。此类工作在 DAX 中完成,而数据清理和逐行计算创建附加列可以在 Power Query(查询编辑器)中轻松完成。