Power BI - 篩選上下文(context)與CALCULATE函數的計算概念

更新於 發佈於 閱讀時間約 4 分鐘

目錄

  1. 篩選上下文是什麼
  2. CALCULATE()
  3. Excel樞紐分析表的明細表
  4. 簡單來說


  1. 篩選上下文是什麼
    • 篩選上下文是來自於英文單字「context」,本意是語境、前後關係、文章的上下文
    • 如果我們才剛開始接觸,可以先把篩選上下文想像成是經過了篩選之後的環境、整體情況
    • 實際上,篩選上下文是數據模型中的基礎表經過所有篩選器的交互之後,最終得到的可見數據(先看過就好,後面再慢慢理解)
      • 基礎表:數據模型中存在的表
      • 篩選器:可以想像成是篩選的條件
      • 可見數據:參與計算的數據
  1. CALCULATE()
    • CALCULATE()是貫穿DAX語法的最重要的函數,讓我們看看CALCULATE()跟篩選上下文之間的關係吧
    • CALCULATE()的作用:在已修改的篩選上下文中計算第一個參數的表達式
    • CALCULATE()的參數
      CALCULATE(<expression>[, <filter1> [, <filter2> [,]]])
      • 第一參數是我們要計算的表達式,被稱為計算器參數
      • 第二參數是可選可重複的,這些參數被稱為內部篩選器參數
    • 下面我們試著以例子來看看CALCULATE()的參數使用方式,如果我們有一個表,是一個人在2022年下半年的支出部分數據,如圖
    raw-image
    • 如果我們只放第一參數
      // CALCULATE(<表達式>)
      量值1 = CALCULATE(SUM('支出'[交易金額]))
      • 我們要計算的表達式,即是對交易金額做加總
      • 這時在Power BI中使用資料表這個視覺效果,放入一級分類與量值1
      raw-image
    • 如果我們再放入第二參數
      // CALCULATE(<表達式>, <內部篩選器>)
      量值2 = CALCULATE(SUM('支出'[交易金額]), '支出'[日期] >= DATE(2022, 10, 1))
      • 我們一樣要計算交易金額的加總,而這個計算會是基於日期在2022-10-01之後的數據來做計算的
      • 將量值2放入資料表
      raw-image
    • 實際上,量值是在放入了視覺效果中才會開始計算的,也就是CALCULATE()是在放入了視覺效果中才開始計算的,內部篩選器會與外部計值環境交互後生成了篩選上下文,在這個已修改的篩選上下文中計算第一參數的表達式
      • 外部計值環境:對某個函數而言,在其開始計算時就已經存在的計值環境
    • 我們試著以例子來看看CALCULATE()與篩選上下文的關係
      • 以量值2在一級分類為交通的那一列(row)為例,如圖中紅框
      raw-image
      • 在這邊再展示一次量值2的程式碼,以方便觀看下列的步驟
        // CALCULATE(<表達式>, <內部篩選器>)
        量值2 = CALCULATE(SUM("支出"[交易金額]), "支出"[日期] >= DATE(2022, 10, 1));
      1. 對於CALCULATE()來說,外部計值環境只有一個篩選器為'支出'[一級分類] = "交通",其來自於資料表的列標籤
        • 初始篩選器:資料表(矩陣)的列標籤、篩選窗格、交叉分析篩選器、圖表聯動(順帶一提,之後的篇章會再多做提及)
      2. 對於CALCULATE()來說,內部篩選器只有一個篩選器為'支出'[日期] >= DATE(2022, 10, 1)
      3. 這時候所有的篩選器交互,也就是內部篩選器會與外部計值環境的篩選器交互,成為篩選器組合為'支出'[一級分類] = "交通" && '支出'[日期] >= DATE(2022, 10, 1)
      4. 篩選器組合會對數據模型中的基礎表做篩選,得出最終的可見數據,也就是已修改的篩選上下文
      5. 在已修改的篩選上下文中計算第一個參數的表達式SUM('支出'[交易金額])
      6. 因此一級分類為交通的那一列,在量值2的數值即為1420
  2. Excel樞紐分析表的明細表
    • 在Excel中,如果我們對樞紐分析表的單元格雙擊就會出現明細表,其實就是該單元格的篩選上下文
      1. 建立樞紐分析表
        raw-image
      2. 在樞紐分析表中的單元格以滑鼠雙擊
        raw-image
      3. 雙擊後跑出來的明細表,其實就是樞紐分析表中我們所雙擊的單元格的篩選上下文,也就是該單元格最終的可見數據,因此對交易金額做加總後會得到1420
        raw-image
  3. 簡單來說
    • 篩選上下文:數據模型中的基礎表經過所有篩選器的交互之後,最終得到的可見數據
    • CALCULATE():在已修改的篩選上下文中計算第一個參數的表達式
avatar-img
1會員
1內容數
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
你可能也想看
Google News 追蹤
提問的內容越是清晰,強者、聰明人越能在短時間內做判斷、給出精準的建議,他們會對你產生「好印象」,認定你是「積極」的人,有機會、好人脈會不自覺地想引薦給你
Thumbnail
SUMIF 函數是數據分析的利器,幫助你輕鬆篩選並加總特定條件下的數據。無論你想了解某產品在特定期間內的銷售總額,或是分析特定客戶的購買金額,SUMIF 都能快速提供精確結果。這個工具適合自動化報表設定和即時數據分析,讓你不必手動篩選數據即可得到所需的答案。
Thumbnail
商業簡報不僅僅是呈現數據,更需要深入瞭解數據分析及有效的工具運用。本文探討於Excel中使用不同函數來改善數據處理效率,包括IF、IFS、VLOOKUP、XLOOKUP及INDEX與MATCH的結合,幫助商業人士更好地從數據中提取洞見,助力業務增值,學習優化數據分析過程,讓您的商業簡報更具影響力。
Thumbnail
透過這篇文章,您可以瞭解如何使用Excel的「運算列表」功能來完成淨利模擬,並且得知銷貨收入成長率和員工人數的變動對營業淨利的影響。無論您是公司主管或是對於Excel有興趣的使用者,這篇文章都會對您有所幫助。
Thumbnail
這篇內容,將會講解什麼是變數範圍,以及與變數範圍相關的知識。包括變數範圍的簡介、實體變數、全域變數、局部變數、常數。
Thumbnail
條件資料行是POWER QUERY裡面一個可以設定指定條件,進而判斷符合條件的資料產生指定的內容,就跟EXCEL中的IF函數很像。 但是POWER QUERY的條件資料行,他是利用對話式的視窗,所以不需要自己動手寫函數,就可以順利達到相同的功能。 今天就用1個資料3個題目來學習這個功能
如何在SQL實踐中EXCEL 常用功能 篩選 和 擷取文字串?需要熟練地使用分組(GROUP BY) 與 排序 (ORDER BY) 以及SUBSTRING_INDEX函數!
Thumbnail
在工作中,我們經常需要處理財務數據,例如收支表、成本表等。在這些表格中,我們需要計算支出比例,以了解支出占總收入的比例。計算支出比例的方法有很多種,其中一種方法是使用 Excel 的「列總計 %」功能。這個功能可以快速、準確地計算支出百分比,並且操作簡單,非常適合職場工作者使用。
Thumbnail
今天來聊聊一個新手必學的兩個函式:SUMIF 跟 SUMIFS! 簡單來說,SUMIF 跟 SUMIFS 都是用條件來篩選值、再做加總的函式,你可以看成是 SUM 跟 IF / IFS 的結合。
Thumbnail
POWER QUERY樞紐資料行這個功能其實跟EXCEL的樞紐相似度大約90%,但是使用方式有點不太相同。 那樞紐到底是什麼東東呢? 其實樞紐就是將一維表轉成二維表,或者有人說將長資料轉成寬資料,那什麼是長資料什麼是寬資料呢? 長資料 資料中不論有多少欄,每一列只有一筆數據,長資
Thumbnail
SUMIF是EXCEL中一個超級實用的統計函數,他可以依據指定的關鍵字進行加總。 SUMIF有條件加總 函數說明=SUMIF(條件範圍,條件,加總範圍) 但如果遇到很多個資料範圍,大多數的人就會使用很多個SUMIF計算後再相加,如下範例所示。 其實這樣多範圍的資料不需要3個SUMIF,
提問的內容越是清晰,強者、聰明人越能在短時間內做判斷、給出精準的建議,他們會對你產生「好印象」,認定你是「積極」的人,有機會、好人脈會不自覺地想引薦給你
Thumbnail
SUMIF 函數是數據分析的利器,幫助你輕鬆篩選並加總特定條件下的數據。無論你想了解某產品在特定期間內的銷售總額,或是分析特定客戶的購買金額,SUMIF 都能快速提供精確結果。這個工具適合自動化報表設定和即時數據分析,讓你不必手動篩選數據即可得到所需的答案。
Thumbnail
商業簡報不僅僅是呈現數據,更需要深入瞭解數據分析及有效的工具運用。本文探討於Excel中使用不同函數來改善數據處理效率,包括IF、IFS、VLOOKUP、XLOOKUP及INDEX與MATCH的結合,幫助商業人士更好地從數據中提取洞見,助力業務增值,學習優化數據分析過程,讓您的商業簡報更具影響力。
Thumbnail
透過這篇文章,您可以瞭解如何使用Excel的「運算列表」功能來完成淨利模擬,並且得知銷貨收入成長率和員工人數的變動對營業淨利的影響。無論您是公司主管或是對於Excel有興趣的使用者,這篇文章都會對您有所幫助。
Thumbnail
這篇內容,將會講解什麼是變數範圍,以及與變數範圍相關的知識。包括變數範圍的簡介、實體變數、全域變數、局部變數、常數。
Thumbnail
條件資料行是POWER QUERY裡面一個可以設定指定條件,進而判斷符合條件的資料產生指定的內容,就跟EXCEL中的IF函數很像。 但是POWER QUERY的條件資料行,他是利用對話式的視窗,所以不需要自己動手寫函數,就可以順利達到相同的功能。 今天就用1個資料3個題目來學習這個功能
如何在SQL實踐中EXCEL 常用功能 篩選 和 擷取文字串?需要熟練地使用分組(GROUP BY) 與 排序 (ORDER BY) 以及SUBSTRING_INDEX函數!
Thumbnail
在工作中,我們經常需要處理財務數據,例如收支表、成本表等。在這些表格中,我們需要計算支出比例,以了解支出占總收入的比例。計算支出比例的方法有很多種,其中一種方法是使用 Excel 的「列總計 %」功能。這個功能可以快速、準確地計算支出百分比,並且操作簡單,非常適合職場工作者使用。
Thumbnail
今天來聊聊一個新手必學的兩個函式:SUMIF 跟 SUMIFS! 簡單來說,SUMIF 跟 SUMIFS 都是用條件來篩選值、再做加總的函式,你可以看成是 SUM 跟 IF / IFS 的結合。
Thumbnail
POWER QUERY樞紐資料行這個功能其實跟EXCEL的樞紐相似度大約90%,但是使用方式有點不太相同。 那樞紐到底是什麼東東呢? 其實樞紐就是將一維表轉成二維表,或者有人說將長資料轉成寬資料,那什麼是長資料什麼是寬資料呢? 長資料 資料中不論有多少欄,每一列只有一筆數據,長資
Thumbnail
SUMIF是EXCEL中一個超級實用的統計函數,他可以依據指定的關鍵字進行加總。 SUMIF有條件加總 函數說明=SUMIF(條件範圍,條件,加總範圍) 但如果遇到很多個資料範圍,大多數的人就會使用很多個SUMIF計算後再相加,如下範例所示。 其實這樣多範圍的資料不需要3個SUMIF,