2017-04-17 42 views
2

經過StackOverflow PowerBI論壇上的幾篇文章後,我仍然無法弄清楚如何計算基於給定期間的滾動平均值 - 在我的情況下爲30天的滾動平均值。如何計算DAX/PowerBI中的滾動平均值?

大多數我見過提倡什麼相同或者真的類似這樣的帖子:

Rolling Sum := 
CALCULATE (
    [Sales], 
    FILTER (
     ALL (Sales), 
     [Date] 
      >= MAX (Sales[Date]) - 365 
      && [Date] <= MAX (Sales[Date]) 
    ) 
) 

(從this post採取代碼)

......可是,我似乎無法獲得適當的價值。

在我的情況,我有以下幾點:

  1. 「截止日期」 對於給定的貸款(列)
  2. 貸款計數(測量)
  3. 收盤長度(柱) - 的時間長(以天爲單位)關閉貸款

我想要計算的是任何給定日期的滾動30天平均值。我編寫如下:

Rolling Average = 
    CALCULATE (
     SUM(Query1[Closing_Length])/[Loan Count],         
     FILTER (
      ALL (Query1),        
      [Closing Date].[Date]         
       >= MAX (Query1[Closing Date]) - 30 
       && [Closing Date] <= MAX ( Query1[Closing Date]) 
     ) 
    ) 

要檢查的結果,我用了一個視覺過濾器來檢查一個月的數據的價值,這些都是結果:

enter image description here

注總計行的底部;在這一段時間裏,有102筆貸款,合計3922天結束。我想計算的平均值爲3922/102,應該等於大約38.45天。相反,我們看到42.

我該如何解決這個問題?基於

+0

http://www.sqlbi.com /用品/羅林g-12-months-average-in-dax/ –

+0

@KrystianSakowski不,該帖子不適用於滾動30天期限。它使用'SAMEPERIODLASTYEAR'函數,並且在30天的滾動期間內,不能使用「同一時間段」 - 所有日期的任何函數而不會出錯。 – daOnlyBG

+0

您可以發佈該會員的表情或數據Query1 [CTC Days])嗎? –

回答

3

測量溶液:

Rolling Average Measure = 
VAR A = 
    SUMX (
     FILTER (
      ALL ('Query'), 
      'Query'[Closing Date] <= MAX ('Query'[Closing Date]) 
     ), 
     ROUND ('Query'[Closing Length], 2) 
    ) 
VAR B = 
    SUMX (
     FILTER (
      ALL ('Query'), 
      'Query'[Closing Date] <= MAX ('Query'[Closing Date]) 
     ), 
     ROUND ('Query'[Loan Count], 2) 
    ) 
RETURN 
    A/B 

基於計算列溶液:

​​

打印屏幕: Rolling Average Measure

+0

這真的很整潔,克里斯蒂安 - 謝謝你。但是,在嘗試實現這兩種解決方案之後,我遇到了兩個問題 - 對於基於列的解決方案,我有錯誤:檢測到循環依賴關係:查詢1 [滾動平均值]。對於基於度量的解決方案,內存不足;視覺試圖運行大約5-10分鐘,然後最後顯示一個錯誤窗口,說沒有足夠的內存來產生我要求的內容。 有關如何處理的建議? – daOnlyBG

+0

似乎你做錯了什麼。看看我的.pbix項目:https://www.dropbox.com/s/6godtc8h4vre1c7/tst.pbix?dl=0 此外請更新PBI到最新版本。 讓我知道如果你需要更多的幫助。 –

+0

的一個明顯的區別我我們兩個文件之間看到的是'貸款Count'是您的最終列,而在我,這是一個措施。在我的ETL中,我有很多貸款號碼和每個貸款號碼都有自己的截止日期;因此,'貸款Count'實際上是設置爲'COUNT( '查詢1'[LoanNumber])'的量度。我試圖讓另一臺具有獨特日期的'收盤Date'柱中,與各自的截止日期相關聯的所有貸款的數量,然後另一列。我正在與後者鬥爭。 – daOnlyBG