2016-10-17 12 views
0
╔═══════╦═════╦═══════╦════════╦═══════╦════════╗ 
║ Month ║ Day ║ City1 ║  ║ City2 ║  ║ 
╠═══════╬═════╬═══════╬════════╬═══════╬════════╣ 
║  ║  ║ Abs. ║ Relat. ║ Abs. ║ Relat. ║ 
║ Jan ║ 1 ║ X  ║ 10% ║ Z  ║ -3% ║ 
║  ║ 2 ║ X  ║ -7% ║ Z  ║ 5%  ║ 
║  ║ ... ║  ║  ║  ║  ║ 
║  ║ 31 ║  ║  ║  ║  ║ 
║ Feb ║ 1 ║ ... ║ ... ║ ... ║ ... ║ 
║  ║ 2 ║  ║  ║  ║  ║ 
║  ║ ... ║  ║  ║  ║  ║ 
║  ║ 31 ║  ║  ║  ║  ║ 
╚═══════╩═════╩═══════╩════════╩═══════╩════════╝ 

アブス:絶対; Relat .: relativeパワーピボット - 同じ平日と比較する

私はパワーピボットに慣れています。

このようなテーブルを作成する必要があります。相対カラムは、過去4週間の平均(同じ曜日)に基づいています。 1月1日は金曜日だったので、::

  1. 相対列には、最後の4つの金曜日(4、11,18、12月25日)
  2. の平均は、その後絶対値と比較計算します(%で表現)

どのようにこの相対列を計算できますか?

答えて

1

これを行う最も簡単な方法は、2つの段階に分解することです。 まず、4週間前の全体の平均を出し作品メジャーを作成:

Average Abs = 0.25 * ( CALCULATE(SUM(Table1[Abs]),DATEADD(Table1[Date],-7, Day)) + CALCULATE(SUM(Table1[Abs]),DATEADD(Table1[Date],-14, Day))+ CALCULATE(SUM(Table1[Abs]),DATEADD(Table1[Date],-21, Day))+ CALCULATE(SUM(Table1[Abs]),DATEADD(Table1[Date],-28, Day)) )

重要:はギャップが日付のあなたのセット内に存在しない場合はDateAdd関数にのみ機能します。データがない日付がある場合は、その日付のデータテーブルに空白のエントリを作成するか(推奨オプション)、日付辞書テーブルを作成し、それにファクトテーブルをリンクする必要があります。

注:私はあなたのデータがレポートの開始の少なくとも4週間前に戻ったと仮定しています。そうでない場合は、4で足し算して割ると正しい平均は得られません。

は、この日のために腹筋値にこれを比較してメジャーを作成:

relat = DIVIDE(SUM(Table1[Abs]),[Average Abs])-1

フォーマットをこの%として。

私はいくつかのランダム生成されたデータに基づいて、私はこのようなものを得る:私は日付辞書テーブルを作成し、私の「メインソース」テーブルにリンクさ

enter image description here

+0

を。私は平均アブスメントを作成しましたが、VALUESに追加しようとすると – blocnt

+0

が表示されます。「DATEADD関数は連続した日付選択でのみ機能します」今、私のデータは1月から10月です。手伝って頂けますか? – blocnt

+0

日付辞書には隙間があってはなりません。日付範囲に入る日と4週間前の日付のエントリが必要です。 –