1. 程式人生 > >從零開始Tableau | 10.表計算-基礎

從零開始Tableau | 10.表計算-基礎

 

表計算是tableau中的一個重要知識點,也是應用的難點之一,但用好表計算,能較好解決日常分析中的許多計算問題。本節記錄要點:

  • 基礎概念
  • 快速表計算
  • 建立表計算

基礎概念

1.表計算是針對多行資料進行計算的方式,建立表計算後,在標記卡、“行”功能區或“列”功能區的該計算欄位,其右側會出現正三角形符號。

圖:表計算標記示例
圖:表計算標記示例

 

2.表計算在檢視中應用於度量值的轉換,是對同一欄位下的資料做資料間的運算,表現為欄位與自己發生關係。比如,有一個檢視體現了各地區分年度的銷售額情況,可以根據分析需要,用表計算將銷售額轉化為各類相關數值。

圖:地區年度銷售額檢視示例
圖:地區年度銷售額檢視示例

 

  • 將銷售額轉化為年度同比變化值。
圖:銷售額轉化為年度同比變化值示例
圖:銷售額轉化為年度同比變化值示例

 

  • 將銷售額轉化為年度同比增長率。
圖:銷售額轉化為年度同比增長率示例
圖:銷售額轉化為年度同比增長率示例

 

  • 將銷售額轉為地區佔總額百分比。
圖:銷售額轉化為地區佔總額百分比示例
圖:銷售額轉化為地區佔總額百分比示例

 

3.表計算中的“表”,由檢視中的維度決定,與資料來源中的表沒有直接聯絡。也就是說,在使用表計算時,計算物件與資料來源中的維度欄位沒有直接聯絡,只與當前檢視中的維度欄位有關。

在各地區分年度銷售額情況檢視中,只有“地區”和“年度”兩個維度欄位,以及“銷售額”1個度量欄位,儘管資料來源中的維度和度量欄位加起來超過20個,但基於當前檢視的表計算,只與“地區”、“年度”、“銷售額”有關,各種計算方式都是圍繞著它們展開,與資料來源中的其他欄位沒有關係。

圖:表計算相關欄位示例
圖:表計算相關欄位示例

 

快速表計算

型別

tableau將常用的表計算型別封裝成了“快速表計算”,目前,“快速表計算”包括彙總、差異、百分比差異、總額百分比、排序、百分位、移動平均、YTD總計(本年迄今總計)、複合增長率、年同比增長和YTD增長(本年迄今增長),共計11個,可實現對錶中一組資料的快速計算總計、差異、移動平均等。

圖:快速表計算型別
圖:快速表計算型別

 

使用

快速表計算的使用比較簡單,僅需兩步即可完成。這裡以超市資料來源為例,計算各地區銷售額年度同比變化值。

Step01 建立檢視。建立一個以“銷售額”為度量值,以“地區”和“訂單日期”為維度欄位的交叉表。

圖:建立交叉表示例
圖:建立交叉表示例

 

Step02 通過“銷售額”欄位右側的倒三角,選擇快速表計算的“差異”,即可完成各地區銷售額年度同比變化值的計算。

圖:使用快速表計算示例
圖:使用快速表計算示例

 

問題點

需要注意的是,快速計算表的預設計算依據是“橫穿”,即沿著水平方向進行計算,如果檢視的行列欄位位置不符合“橫穿”方式的計算方向,則計算結果很可能大相徑庭。

以上面的檢視為例,對於“地區”為行標題、“日期”為列標題的檢視佈局,在計算地區銷售額年度同比變化值時,正好符合快速計算表“橫穿”計算方向,即在水平方向上進行計算。

圖:"橫穿"方式示例
圖:"橫穿"方式示例

 

如果將上面的檢視進行“行列”轉換,即將“地區”變為列標題、“日期”變為行標題,按預設的“橫穿”計算方向進行計算,則不能獲得預期結果。

圖:交換欄位位置示例
圖:交換欄位位置示例

 

這是因為, 對檢視進行行列轉後,按預設快速表計算的結果,反映的是每一個年度相鄰兩個地區的銷售額差異,這與期望獲取的“每一個地區各年度同比變化值”的結果,存在明顯差異。

圖:快速表計算預設結果錯誤示例
圖:快速表計算預設結果錯誤示例

 

因此,要正確使用好快速表計算,必須弄清楚tableau中“分割槽”與“定址”的概念,正確選擇和使用計算依據,這樣才能準確獲取期望的計算結果。

建立表計算

在對錶格中的資料進行計算時,如果使用Excel,則只需要在相關單元格中,根據計算內容輸入公式即可,計算的順序、使用的欄位完全由使用者自己控制。比如下面這面表,要計算各地區銷售的年度增長率,只需要直接在單元格中輸入“=(C3-B3)/B3”,就可以得到想要的結果。

圖:Excel表計算示例
圖:Excel表計算示例

 

但如果使用的是tableau,由於無法像Excel一樣操作單元格,因此不能直接按照Excel的使用方法,即通過單元格建立公式來達到計算目標,而是要通過建立表計算,選擇相應的計算規則、計算方式、計算順序,讓tableau知曉我們想讓它如何去計算,從而實現我們的計算目標。

這裡的計算規則、計算方式、計算順序,在tableau的建立表計算中,就體現為計算型別、計算依據等內容。

圖:表計算視窗示例
圖:表計算視窗示例

 

“計算型別”提供了具體計算方式,包括差異、百分比差異、百分比、合計百分比、排序、百分位、彙總、移動計算。日常使用的絕大多數分析指標都可以通過這些計算型別進行實現。比如:銷售增長率可以通過“百分比差異”計算得出,銷售額同比增量可以通過“差異”計算得出,銷售額排名可以通過“排序”計算得出,等等。

圖:計算型別示例
圖:計算型別示例

 

“計算依據”定義了tableau在執行表計算時的計算順序,主要分為兩類,一類是封裝好的計算順序和規則,如表(橫穿)、區(向下)、單元格等,一類是自定義計算順序和規則,即“特定維度”。

圖:計算依據示例
圖:計算依據示例