3

ブール値 (0 | 1) を含むテーブル (Table_Name) に列 (Column_Name) があります。各値のカウントを取得しようとしています。たとえば、合計 1500 行あり、700 が True で 800 が False であることを示す 2 つのメジャーが必要です。

私は次のことを試しましたが、それぞれが合計行数 (1500) を示しています:

False_Measure = COUNTAX(FILTER('Table_Name','Table_Name'[Column_Name]=FALSE()),FALSE())

True_Measure = COUNTAX(FILTER('Table_Name','Table_Name'[Column_Name]=FALSE()),TRUE())

私は完全に混乱しています...

この時点で、正しい DAX 関数を使用しているかどうかさえわかりません。

4

2 に答える 2

4

ここにいくつかの可能性があります:

True_Measure = SUMX(Table_Name, 1*Table_Name[Column_Name])
True_Measure = SUMX(Table_Name, 1*(Table_Name[Column_Name] = TRUE()))

False_Measure = SUMX(Table_Name, 1*(Table_Name[Column_Name] = FALSE()))
False_Measure = COUNTROWS(Table_Name) - [True_Measure]

これらのほとんどでは1*、ブール値を強制的にTrue/False数値0またはにするために使用してい1ます。


COUNTROWSフィルタリングされたテーブルでも使用できます。

True_Measure  = COUNTROWS(FILTER(Table_Name, Table_Name[Column_Name] = TRUE()))
False_Measure = COUNTROWS(FILTER(Table_Name, Table_Name[Column_Name] = FALSE()))

本当に を使用したい場合はCOUNTAX、次のようになります。

True_Measure  = COUNTAX(FILTER(Table_Name, Table_Name[Column_Name] = TRUE()), 1)
False_Measure = COUNTAX(FILTER(Table_Name, Table_Name[Column_Name] = FALSE()), 1)
于 2018-07-20T21:28:08.753 に答える
4

問題は COUNTAX() 関数の 2 番目のパラメーターにあります。これは、リストされている同じフィルター アイテムではなく、カウントする列/アイテムである必要があります。

したがって、これらの関数はあなたが望む結果を与えるはずです:

False_Measure = COUNTAX(FILTER('Table_Name', 'Table_Name'[Column_Name]=FALSE()), [Column_Name])

True_Measure = COUNTAX(FILTER('Table_Name', 'Table_Name'[Column_Name]=TRUE()), [Column_Name])

この関数のドキュメントは、ここにリストされています。

于 2018-07-20T21:29:13.433 に答える