1. 概述
計算天生存在先後順序,所以過濾也有層級,在不同的計算位置去新增過濾條件,它們的計算邏輯和影響的效果自然也不同。
學習過濾層級,可以幫助你在資料分析的大山上更進一層!
2. 為什麼過濾有層級
同樣的計算,我們把過濾換下順序,就會得到不一樣的結果。
有一組資料,需要進行兩個步驟:①首先,我們過濾出銷售額大於100的資料;②然後,我們計算每個省份的銷售額。最後得到的結果是:我們篩選出了銷售額大於100的分店後,計算了每個區域的總銷售額。
現在,我們改變一下過濾和計算的順序,即①先計算每個省份的銷售額;②然後再過濾出銷售額大於100的資料。最終呈現的結果是:顯示了總銷售額大於100的區域以及這些區域的銷售額。
在 FineBI 裏面,過濾有四個層級,將過濾放在不同的層級會影響最終的計算結果。接下來我們來一起學習 BI 裏面的過濾層級吧
3. BI裏面的過濾層級
計算是有順序的, FineBI 中邏輯上的計算順序大致如下。當然在實際分析中,以下下面四個計算不一定會用全。
計算順序 | 此計算後進行的過濾 |
---|---|
①對資料表進行編輯處理 | 明細過濾:對處理好的資料表進行過濾 |
②在組件中新增 def 計算欄位 | 新增欄過濾:def函式匯出新欄後,對資料表進行過濾 |
③將欄位拖入組件中,完成聚合計算 | 聚合計算過濾:對聚合計算的結果進行過濾 |
④使用快速計算功能,對聚合值進行再計算(二次計算) | 快速計算過濾:對快速計算的結果進行過濾 |
透過下方的流線圖,可以形象的瞭解到,越在左側的過濾,影響的計算越多。比如說:
若進行了「明細過濾」,def欄位計算值、組件聚合、快速計算的計算結果都會因此產生影響;
若進行了「聚合計算過濾」,則對聚合計算的結果值沒有影響;
4. 組件過濾案例
背景:你作為商場營運總管,想了解2021年復購使用者最偏好的產品,以便確定哪些產品能夠吸引並留住顧客
範例資料:辦公用品資料.xlsx
建立分析主題,上傳範例資料,並進入到組件中
4.1 明細過濾
將「簽約時間」拖入到過濾器中,過濾出 2021 年的資料,如下圖所示:
4.2 新增欄過濾
1)使用 def 函式計算出 2021 年每個客戶購買的訂單數,如下圖所示:
2)過濾出「客戶購買的訂單數」≥2 的訂單資料,如此便篩選出復購使用者購買的訂單資料。如下圖所示:
4.3 組件計算
1)建立計算欄位「客戶數」,如下圖所示:
公式分解 | 含義 | 函式說明文檔 |
---|---|---|
COUNTD_AGG(客戶) | 對客戶ID去重計數,計算得到客戶數 | COUNTD_AGG |
2)製作分組表,拖入「產品名稱、銷售額、客戶數」。查看每個產品的復購人數、及對應銷售額。如下圖所示:
4.4 聚合計算過濾
使用者復購率高可能有以下兩個原因:①產品價格低;②產品本身優秀,對使用者有吸引力
在這裏我們想找出的是本身對使用者有吸引力的產品,需要排除掉降價因素,即篩除掉利潤率過低的產品。
1)建立計算欄位「利潤率」,如下圖所示:
2)過濾出利潤率大於 0.1 的產品,如下圖所示:
過濾後的結果如下圖所示。我們可以看到,聚合過濾不影響聚合計算的結果數值,例如:辦公椅聚合過濾前與過濾後的銷售額和客戶數的值都沒有變動。
4.5 快速計算過濾
對客戶數進行排名,並過濾出前 5 名產品。
1)使用快速計算,對「客戶數」進行排名,如下圖所示:
2)過濾出排名前五的省份,如下圖所示:
4.6 效果查看
最終篩選出:2021年,排除掉低價促銷影響後,復購人數最多的 5 個產品。如下圖所示:
5. 總結
回憶一下我們整個程式做的計算和過濾,如下圖所示: