【问题标题】:Power BI - I need a "countif" formula to look at unique entries in row/columnPower BI - 我需要一个“countif”公式来查看行/列中的唯一条目
【发布时间】:2019-04-29 07:52:33
【问题描述】:

我现在只在 Power BI 中工作了一个多星期,现在我遇到了我的第一个问题..

我需要一种方法来执行以下 Excel 公式中的相同操作..

在 Power Bi 中,我有一张桌子。 我想在“B”列中计算唯一的“拆分订单”

但我只想数一次.. 所以第一次找到就算1 接下来我看到它被算作2或3或4或更多..

所以公式说“如果计数不止一次,则返回“X”,否则返回“1” 然后 IF 语句说如果高于 1,则返回 0,否则返回 1

我有数千行,我需要将每一行标识为唯一或不唯一。 但我似乎找不到合适的 DAX 公式组合来做到这一点。 我看过COUNTDISTINCT, CALCULATE, FILTERS, COUNTROWS,还有更多。 它们可能是正确使用的,但我还没有找到正确的语法。

我尝试过的许多 DAX 公式,要么只返回“1”,要么只返回“0”,或者它们返回唯一订单的总数..

Excel公式:

Row 2 = IF(B2="";0;IF(COUNTIF(B$1:$B2;B2)>1;0;1))
Row22 = IF(B22="";0;IF(COUNTIF(B$1:$B22;B22)>1;0;1))
Row32 = IF(B32="";0;IF(COUNTIF(B$1:$B32;B32)>1;0;1))

【问题讨论】:

  • 如果您能提供一些样本数据和基于该数据的预期结果会更容易。
  • 为什么措施 DistinctCount Split Orders = DISTINCTCOUNT('table'[Split Orders]) 不适合您?
  • 唯一拆分订单/拆分订单 1 685286-0 1 686866-0 1 686868-0 1 686879-0 1 686880-0 1 689059-0 1 689059-1 1 689066-0 1 689066-1 1 689070-0 1 689070-1 1 689083-0 1 689083-1 1 689084-0 0 689084-0 1 689084-1 1 689084-2 1 689087-0 1 689094-0 1 689395-0 10 689395-0 1 0 68939 -0 1 689396-1 1 689397-0 1 689398-0 1 689402-0 0 689402-0 1 689404-0 我需要度量或 DAX 公式返回 0 或 1。其中 1 表示订单号是唯一的, 0 表示在列表中出现多次的订单。我不需要总量,我需要每行。
  • 我尝试过的不同变体都只返回零或只返回一个.. 或总唯一数

标签: excel-formula powerbi dax countif


【解决方案1】:

您要查找的是计算列而不是度量。您还需要确定 [Split Order] 列的读取顺序。

您可以通过在 Power Query(“添加列”选项卡)中添加索引列来执行此操作。之后,添加这个计算列:

IsFirstOccurence =
IF (
    COUNTROWS (
        FILTER (
            'table',
            'table'[Split Order] = EARLIER ( 'table'[Split Order] )
                && 'table'[Index] <= EARLIER ( 'table'[Index] )
        )
    ) = 1,
    1,
    0
)

结果如下:

【讨论】:

  • 嗨马可...几乎我需要...我看到在你的例子中 2 和 3 都算作“0”...但是我第一次看到 2 那么它应该是“1”,但下次我看到 2 时它应该是“0”。3 也是如此……第一次看到 3 时它应该是“1”,下次我看到 3 时它应该是“0”。 ..所有拆分订单在第一次看到时都应计为“1”,所有其他实例应为“0”..
  • 如何确定表中的顺序?有日期列还是索引列?
  • 类似“CountDistinctRows”或类似的东西
  • 有很多列有日期..还有一个格式为“yyyy-mm”的列..不知道这样的行是否可以使用..
猜你喜欢
  • 1970-01-01
  • 2021-01-30
  • 2021-02-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-03-08
  • 2021-07-06
  • 1970-01-01
相关资源
最近更新 更多