圖解Earlier函數

在Power Pivot中,Earlier是最抽象的DAX函數之一。剛開始接觸的時候不容易理解,一旦掌握後就會發現Earlier 能幫我們打破行的限制,進行很多複雜的計算,非常有用。

我們先來看下官方的解釋:

看不懂?沒關係,下面我們就通過案例來圖解Earlier:

在Power Pivot中,我們有「產品名稱」和「銷售金額」兩列數據。基於此,我們希望計算出每個產品的銷售金額排名。

最終的公式:

公式里最核心的部分就是通過FILTER和EARLIER的配合,針對每一行數據篩選出來我們需要計算的表格,然後再通過COUNTROWS計算行數後加1拿到我們想要的排名結果。

我們針對第一行數據來分解公式的計算步驟:

針對第二行數據,公式執行了相同的運算:

依此類推,公式對數據中的每一行都執行了這樣的運算,最終拿到我們想要的結果。

再來看一下另外的例子。原始數據是到產品級別的,有「訂單編號」、「產品名稱」和「產品金額」信息,我們在計算列里計算出該訂單的訂單金額。

公式如下:

該公式的運算步驟:

  1. 先通過FILTER生成虛擬表
  2. 篩選虛擬表中的「訂單編號」等於當前行里訂單編號的數據
  3. 通過SUMX對篩選後的數據中「產品金額」進行加總,最終得到我們想要的計算結果。

SUMX+FILTER+EARLIER 是Power Pivot中比較常用的函數組合,建議大家多理解熟悉。

總結:

  • 通過使用Earlier,能幫我們打破表格中的行上下文限制,進行不同級別的數據匯總計算。
  • 由於Earlier針對每一行數據都進行計算,所以理論上計算量相當於數據行數的平方。如果有10行數據,則需要計算100次,所以數據量大的時候大家使用要小心,有可能會造成模型計算緩慢。

這就是今天分享的全部內容,希望能對您理解Earlier函數有幫助。如果您想深入學習Excel Power Pivot建模分析或微軟Power BI,歡迎登錄網易雲課堂試聽學習我們的「從Excel到Power BI數據分析可視化」系列課程。或者關注我們的公眾號(PowerPivot工坊)後猛戳」在線學習」

*PowerPivot工坊原創文章,歡迎轉載,請註明出處

-----------------------------------------------------------------------------------------------------------------------

延伸閱讀:

在Power Pivot中使用DATEDIFF函數計算日期時間間隔

使用USERELATIONSHIP實現兩表之間多個關係的調用

在Power Pivot中計算父行匯總百分比

圖解Earlier函數

Power Pivot時間智能之YTD(年初至今累計)

一張圖看懂微軟Power BI系列組件

當Power BI遇上歐冠決賽

-----------------------------------------------------------------------------------------------------------------------

如果您想深入學習微軟Power BI,歡迎登錄網易雲課堂試聽學習我們的「從Excel到Power BI數據分析可視化」系列課程。或者關注我們的公眾號(PowerPivot工坊)後猛戳」在線學習」


推薦閱讀:

Office效率騰飛的秘密:Excel快捷鍵
EARLIER函數精細化計算行間差
【常用技巧】選擇性粘貼這二個逆天的技巧你肯定不知道!
2017年主要國家對中國評價
關於Excel列印,你需要知道這些知識點

TAG:PowerBI | MicrosoftExcel | 数据分析 |