[英]Power BI/DAX: Filter SUMMARIZE or GROUPBY by added column value
[英]Power BI DAX measure: Count occurences of a value in a column considering the filter context of the visual
我想計算列中值的出現次數。 在我的情況下,我想要計算的值是 TRUE()。 假設我的表稱為 Table 並且有兩列:
boolean value
TRUE() A
FALSE() B
TRUE() A
TRUE() B
到目前為止我找到的所有解決方案都是這樣的:
count_true = COUNTROWS(FILTER(Table, Table[boolean] = TRUE()))
問題是我仍然希望顯示度量的視覺(卡片)考慮過濾器(來自切片器)以減少表格。 因此,如果我有一個設置為 value = A 的切片器,則具有 count_true 度量的卡片應該顯示 2 而不是 3。
據我了解,過濾器 function 總是覆蓋視覺過濾器上下文。
為了進一步解釋我的意圖:在較早的時候,TRUE/FALSE 列的值是 1/0,我可以通過使用 SUM function 來實現我的目標,它沒有指定過濾器上下文,只是在視覺過濾器上下文中起作用。
我不確定這是否會解決您的問題,但在我看來它是更有效的 dax:
count_true = 計算(COUNTROWS(表),表[布爾])
如果在更改度量以使用此格式后仍然存在問題,則可能是 model 存在潛在問題。 還有可能適用於此處的 function KEEPFILTERS,但我認為使用 KEEPFILTERS 會使您的情況過於復雜。
我認為你給出的 DAX 應該可以工作,只要它是一個度量,而不是一個計算列。 (計算列無法從報告中讀取過濾器上下文。)
在評估措施時,
count_true = COUNTROWS ( FILTER ( Table, Table[boolean] = TRUE() ) )
FILTER 中的第一個參數不一定是完整表,但該表已經被本地過濾器上下文過濾(包括報告/頁面/視覺過濾器以及切片器選擇和本地上下文,例如行/列矩陣視覺)。
因此,如果您通過切片器 select Value = "A"
,則 FILTER 中的表已被過濾為僅包含"A"
值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.