2016-11-30 2 views
-1

パワーBI(DAX)でタスクを実行する必要があります。ここでは、ユーザと作業フィールドのリストがあります。 私はすべてのユーザーに対応するすべてのフィールドを組み合わせて最高の周波数の組み合わせを見つけなければなりません。
以下は、私がそれをどのように計画しているかです。 "サンプル"ファイルから "期待される結果"をどのように生成できますか?パワーBI:与えられた条件のカラムからのセルの結合

Sample: 
    ID  Value 
    a  medicine 
    b  automobile 
    c  banking 
    d  scientist 
    a  banking 
    a  scientist 
    d  banking 

Expected Result: 
ID  Value Combi 
a  medicine|banking|scientist 
b  automobile 
c  banking 
d  scientist|banking 

答えて

2

あなたは複数の行から値を連結し、CONCATENATEX() DAX関数を使用して区切られた文字列を生成することができます。次に、ADDCOLUMNSとSUMMARIZEを使用して目的の結果を取得します。

Expected Table = 
SUMMARIZE (
    ADDCOLUMNS (
     'Table', 
     "Combined Value", CONCATENATEX (
      FILTER (
       SUMMARIZE ('Table', 'Table'[ID], [Value]), 
       [ID] = EARLIER ('Table'[ID]) 
      ), 
      'Table'[Value], 
      "|" 
     ) 
    ), 
    [ID], 
    [Combined Value] 
) 

それは生成します。私の意見では

enter image description here


ロジック打破

最も簡単な方法は、組み合わせを生成するために、あなたのテーブルで計算列を作成することです値の列:

Combined Value = 
CONCATENATEX (
    FILTER (
     SUMMARIZE ('Table', 'Table'[ID], [Value]), 
     [ID] = EARLIER ('Table'[ID]) 
    ), 
    'Table'[Value], 
    "|" 
) 

次に、以前に作成した計算列を使用してテーブルに基づいて集計テーブルを作成できます。計算テーブルを作成するには、[モデリング]タブに移動し、New Tableアイコンをクリックします。

enter image description here

使用この式:あなたはこのようなテーブルを取得します

Resumed Table = 
SUMMARIZE ('Table', [ID], 'Table'[Combined Value]) 

:両方の方法がうまく機能するが

enter image description here

は、お勧めの方法は、これに近づきますPower Queryまたはソースから直接発行された問題です。

これが役立つかどうか教えてください。

関連する問題