1. 概述
Excel 中
「條件計數(COUNTIF/COUNTIFS)」:統計滿足某個條件的資料條數。
「條件求和(SUMIF/SUMIFS)」:用於對指定條件的值求和。
在 BI 中同樣也可以使用組合函式實現條件求和與計數。
注:BI 中不能實現跨資料表計算,只能在一張資料表中進行計算。
2. 條件計數
2.1 在組件中實現
注:若不需要去重統計,只需要記錄次數,那麼使用 COUNT_AGG 計數即可。
範例:計算激活日期當日登入的使用者數(對當日登入使用者聯絡方式進行去重計數)
範例資料:使用者留存分析.xlsx
2.1.1 操作步驟
建立分析主題,新增「使用者留存分析」資料後,新增組件並進入組件編輯介面。
建立「計算欄位」,輸入欄位名稱「激活當日登入使用者數」,公式為:COUNTD_AGG(IF(DATEDIF(最早激活日期,登入時間,"D")=0,聯絡電話,null)),並點選「確定」,如下圖所示:
公式說明:
公式 | 說明 |
---|---|
DATEDIF(最早激活日期,登入時間,"D") | 計算登入時間和最早激活時間的時間差,傳回以天為維度的時間差 |
IF(DATEDIF(最早激活日期,登入時間,"D")=0,聯絡電話,null) | 如果時間差=0,即激活日期當日就登入,那麼匯出使用者的「聯絡電話」,否則匯出 null,即不計數 |
COUNTD_AGG(IF(DATEDIF(最早激活日期,登入時間,"D")=0,聯絡電話,null)) | 對當日登入使用者聯絡方式進行去重計數 |
2.1.2 效果查看
選擇分組表,將「最早激活時間」拖入橫軸並設定分類為「年月」,將「激活當日登入使用者數」欄位拖入縱軸,則可以看到激活當天登入使用者的數量,如下圖所示:
注:如果需要計數不為空的資料,可使用類似COUNTD_AGG(IF(欄位1!="",欄位2,null)) 公式。
2.2 在資料中實現
使用 分組匯總 功能實現去重計數和計數,如下圖所示:
3. 條件求和
範例:計算「省份」為「北京」且「客戶名稱」為「格雙有限公司」的「合同金額」總量。
範例資料:「內建DEMO>地區資料分析」 地區資料分析.xlsx
3.1 操作步驟
新增組件,選擇「地區資料分析」資料集,建立「計算欄位」,輸入欄位名稱「北京 格雙有限公司回款總額」,公式為:SUM_AGG(IF(省份="北京市",如下圖所示:
公式說明:
公式 | 說明 |
---|---|
IF(省份="北京市" | 如果同時滿足「省份」為「北京」且「客戶名稱」為「格雙有限公司」,則匯出「回款金額」,否則匯出 0 |
SUM_AGG(IF(省份="北京市" | 對上一步匯出的結果進行求和 |
3.2 效果查看
儲存欄位後,將「北京 格雙有限公司回款總額」欄位拖入縱軸,則可以看到指定條件下的回款總額,如下圖所示: