Power BI topn 函数:topn 函数由于重复而返回多于 n 行的问题

Posted

技术标签:

【中文标题】Power BI topn 函数:topn 函数由于重复而返回多于 n 行的问题【英文标题】:Power BI topn function: Problem with topn function returning more than n rows due to duplicates 【发布时间】:2021-09-09 01:33:14 【问题描述】:

这是我拥有的当前数据表,称为“潜在高使用率” CLICK TO SEE DATA TABLE

我尝试使用 TOPN 函数根据“点击次数”创建前 10 名“用户 ID”的表格。这就是我尝试这样做的方式:

High Usage IDs = topn(10,'Potential High Usage',[Number of clicks])

问题是它返回 11 行而不是 10 行。我认为这是因为我有很多重复项,但点击次数最少,但仍被视为前 10 行(点击次数 = 2)。我想知道是否有办法只返回 10 行?

【问题讨论】:

【参考方案1】:

是的。当第 N 行有平局时,TOPN 将返回多于 N 行。 请参阅 Microsoft TOPN dax 函数文档。

【讨论】:

我想知道是否有办法只返回表格的前 10 行?我尝试先对表格进行排序,然后使用 topn,但它似乎忽略了我所做的排序。【参考方案2】:

首先使用幂查询添加索引列。 然后使用以下 DAX 返回前 10 行。

【讨论】:

这对我不起作用,因为它返回前 10 行的表,该表纯粹基于分配的索引,它忽略了确定前 10 名内容的“点击次数”列行是。 先对“点击次数”列进行升序排序,然后创建索引列,然后使用代码。 抱歉,我是 Power BI 的新手。实际上,由于我的表是计算表,因此它不会显示在电源查询中,因此我无法单击“添加索引列”。有没有办法让我使用 DAX 添加您提到的索引列? 不是很好的解决方案,但解决方法是在数据视图中使用 3 个点复制计算表并粘贴到 excel 中,然后重新加载 excel 并在电源查询中插入索引列并使用 dax 代码。

以上是关于Power BI topn 函数:topn 函数由于重复而返回多于 n 行的问题的主要内容,如果未能解决你的问题,请参考以下文章

根据 Power BI 中的卷将所选客户端与排除所选客户端的 TOP N 客户端进行比较

Flink-使用flink处理函数以及状态编程实现TopN案例

Flink应用案例统计实现TopN的两种方式

Flink应用案例统计实现TopN的两种方式

mysql分组top1 和 topn

topN问题