代码之家  ›  专栏  ›  技术社区  ›  Rishav Tripathi

Power BI:DAX:统计测量列中出现的次数

  •  0
  • Rishav Tripathi  · 技术社区  · 2 年前

    我有一个表,有两列:联系人和帐户id。一个联系人可以有多个帐户。

    使用DAX,我创建了一个特定的帐户,该帐户与我的联系人数有关。

    Compte de Account = CALCULATE(COUNT('Rapport globale'[AccountId]))

    是否可以按屏幕截图中提到的升序计算测量列(Compte de Account)的计数:

    enter image description here

    提前感谢你的帮助。

    0 回复  |  直到 2 年前
        1
  •  0
  •   TheRizza    2 年前

    试试这个: Rank = RANKX(ALL('Rapport globale'[Contact]),[Compte de Account],,DESC,Dense)

    Sample data

    让RANK开始工作最重要的部分是ALL()函数。行上下文将联系人的值限制为当前行值,而ALL将删除行上下文,以便您可以对所有联系人进行排序,而不仅仅是当前行上的联系人。

        2
  •  0
  •   Charfeddine Mohamed Ali    2 年前

    在Power bi中,我们可以选择一列,然后使用 RANKX() 在一定程度上。

        3
  •  0
  •   Dani U    2 年前

    我认为问题在于频率,而不是排名。当Commenter@rf1991说将度量值更改为计算列时,他说的是正确的。基本上,您希望将该值作为一个可以报告的维度。

    首先,创建这个计算列。

    Compte de Account Column = CALCULATE(
        COUNT('Rapport globale'[AccountId]),
        ALLEXCEPT('Rapport globale','Rapport globale'[Contact])
    )
    

    接下来,创建频率测量。

    Compte de Account Frequency = 
    CALCULATE(
        SUMX(
            ADDCOLUMNS(
                    SUMMARIZE('Rapport globale','Rapport globale'[Compte de Account Column]),
                    "@freq",DISTINCTCOUNT('Rapport globale'[Contact])
            ),
            [@freq]),
        REMOVEFILTERS('Rapport globale'[Contact])
    )