從零開始Tableau | 10.表計算-基礎
表計算是tableau中的一個重要知識點,也是應用的難點之一,但用好表計算,能較好解決日常分析中的許多計算問題。本節記錄要點:
- 基礎概念
- 快速表計算
- 建立表計算
基礎概念
1.表計算是針對多行資料進行計算的方式,建立表計算後,在標記卡、“行”功能區或“列”功能區的該計算欄位,其右側會出現正三角形符號。
2.表計算在檢視中應用於度量值的轉換,是對同一欄位下的資料做資料間的運算,表現為欄位與自己發生關係。比如,有一個檢視體現了各地區分年度的銷售額情況,可以根據分析需要,用表計算將銷售額轉化為各類相關數值。
- 將銷售額轉化為年度同比變化值。
- 將銷售額轉化為年度同比增長率。
- 將銷售額轉為地區佔總額百分比。
3.表計算中的“表”,由檢視中的維度決定,與資料來源中的表沒有直接聯絡。也就是說,在使用表計算時,計算物件與資料來源中的維度欄位沒有直接聯絡,只與當前檢視中的維度欄位有關。
在各地區分年度銷售額情況檢視中,只有“地區”和“年度”兩個維度欄位,以及“銷售額”1個度量欄位,儘管資料來源中的維度和度量欄位加起來超過20個,但基於當前檢視的表計算,只與“地區”、“年度”、“銷售額”有關,各種計算方式都是圍繞著它們展開,與資料來源中的其他欄位沒有關係。
快速表計算
型別
tableau將常用的表計算型別封裝成了“快速表計算”,目前,“快速表計算”包括彙總、差異、百分比差異、總額百分比、排序、百分位、移動平均、YTD總計(本年迄今總計)、複合增長率、年同比增長和YTD增長(本年迄今增長),共計11個,可實現對錶中一組資料的快速計算總計、差異、移動平均等。
使用
快速表計算的使用比較簡單,僅需兩步即可完成。這裡以超市資料來源為例,計算各地區銷售額年度同比變化值。
Step01 建立檢視。建立一個以“銷售額”為度量值,以“地區”和“訂單日期”為維度欄位的交叉表。
Step02 通過“銷售額”欄位右側的倒三角,選擇快速表計算的“差異”,即可完成各地區銷售額年度同比變化值的計算。
問題點
需要注意的是,快速計算表的預設計算依據是“橫穿”,即沿著水平方向進行計算,如果檢視的行列欄位位置不符合“橫穿”方式的計算方向,則計算結果很可能大相徑庭。
以上面的檢視為例,對於“地區”為行標題、“日期”為列標題的檢視佈局,在計算地區銷售額年度同比變化值時,正好符合快速計算表“橫穿”計算方向,即在水平方向上進行計算。
如果將上面的檢視進行“行列”轉換,即將“地區”變為列標題、“日期”變為行標題,按預設的“橫穿”計算方向進行計算,則不能獲得預期結果。
這是因為, 對檢視進行行列轉後,按預設快速表計算的結果,反映的是每一個年度相鄰兩個地區的銷售額差異,這與期望獲取的“每一個地區各年度同比變化值”的結果,存在明顯差異。
因此,要正確使用好快速表計算,必須弄清楚tableau中“分割槽”與“定址”的概念,正確選擇和使用計算依據,這樣才能準確獲取期望的計算結果。
建立表計算
在對錶格中的資料進行計算時,如果使用Excel,則只需要在相關單元格中,根據計算內容輸入公式即可,計算的順序、使用的欄位完全由使用者自己控制。比如下面這面表,要計算各地區銷售的年度增長率,只需要直接在單元格中輸入“=(C3-B3)/B3”,就可以得到想要的結果。
但如果使用的是tableau,由於無法像Excel一樣操作單元格,因此不能直接按照Excel的使用方法,即通過單元格建立公式來達到計算目標,而是要通過建立表計算,選擇相應的計算規則、計算方式、計算順序,讓tableau知曉我們想讓它如何去計算,從而實現我們的計算目標。
這裡的計算規則、計算方式、計算順序,在tableau的建立表計算中,就體現為計算型別、計算依據等內容。
“計算型別”提供了具體計算方式,包括差異、百分比差異、百分比、合計百分比、排序、百分位、彙總、移動計算。日常使用的絕大多數分析指標都可以通過這些計算型別進行實現。比如:銷售增長率可以通過“百分比差異”計算得出,銷售額同比增量可以通過“差異”計算得出,銷售額排名可以通過“排序”計算得出,等等。
“計算依據”定義了tableau在執行表計算時的計算順序,主要分為兩類,一類是封裝好的計算順序和規則,如表(橫穿)、區(向下)、單元格等,一類是自定義計算順序和規則,即“特定維度”。