交叉表 列字段排序_Tableau学习系列(8):表计算
Tableau表計(jì)算,是針對(duì)多行數(shù)據(jù)進(jìn)行計(jì)算的方式,創(chuàng)建表計(jì)算后,在"標(biāo)卡/行/列”功能區(qū)的該計(jì)算字段,其右側(cè)會(huì)出現(xiàn)正三角形符號(hào)。表計(jì)算能較好解決日常分析中的許多計(jì)算問題。
對(duì)同一字段下數(shù)據(jù)進(jìn)行數(shù)據(jù)間運(yùn)算,例如銷售額年度同比變化值、同比增長(zhǎng)率、部分占比
- 內(nèi)容:
- 1 表計(jì)算創(chuàng)建
- 1.1創(chuàng)建表計(jì)算
- 1.2 快速表計(jì)算
- 2 表計(jì)算依據(jù)2.1 基于“表”計(jì)算
- 2.1 基于“區(qū)”計(jì)算
- 2.3基于“單元格”計(jì)算
- 3 特定維度表計(jì)算
- 3.1單維度應(yīng)用
- 3.1雙維度應(yīng)用
1、表計(jì)算創(chuàng)建
創(chuàng)建視圖。創(chuàng)建一個(gè)以“銷售額”為度量值,以“地區(qū)”和“訂單日期”為維度字段的交叉表。
1.1 創(chuàng)建表計(jì)算
在標(biāo)記卡中需要計(jì)算“字段”右鍵選擇“添加表計(jì)算”
在表計(jì)算框中根據(jù)需要選擇計(jì)算類型、計(jì)算依據(jù)等。默認(rèn)計(jì)算類型:差異;計(jì)算依據(jù):表(橫穿),如下圖,計(jì)算同地區(qū)銷售額年增長(zhǎng)率。
1.2 快速表計(jì)算
tableau將常用的表計(jì)算類型封裝成了“快速表計(jì)算”,包括以下11個(gè),可實(shí)現(xiàn)對(duì)表中一組數(shù)據(jù)的快速計(jì)算總計(jì)、差異、移動(dòng)平均等。
- 匯總
- 差異
- 百分比差異
- 總額百分比
- 排序
- 百分位
- 移動(dòng)平均
- YTD總計(jì)(本年迄今總計(jì))
- 復(fù)合增長(zhǎng)率、年同比增長(zhǎng)
- YTD增長(zhǎng)(本年迄今增長(zhǎng))
2、表計(jì)算依據(jù)
表依據(jù)計(jì)算可以分為三類:
- 基于“表”的計(jì)算
- 基于“區(qū)”的計(jì)算
- 基于“單元格”的計(jì)算
理解“計(jì)算依據(jù)”中的各種計(jì)算方式前,需要掌握尋址和分區(qū)兩個(gè)重要概念:
- 分區(qū)字段:“分區(qū)字段”就是確定計(jì)算時(shí)的分組方式的維度。系統(tǒng)在每個(gè)分區(qū)內(nèi)單獨(dú)執(zhí)行表計(jì)算。
- 尋址字段:執(zhí)行表計(jì)算所針對(duì)的其余維度稱為“尋址字段”,可確定計(jì)算方向。
把維度“地區(qū)”、“類別”拖放到行功能區(qū),訂單日期拖放到列功能區(qū),銷售額拖放到標(biāo)記卡“文本”中。
2.1 基于“表計(jì)算”
基于“表”計(jì)算是指,對(duì)視圖中整個(gè)表進(jìn)行操作。分四種情況:
- 表(橫穿):沿著水平方向進(jìn)行計(jì)算,即每一行數(shù)據(jù)都是從左到右進(jìn)行計(jì)算
- 表(向下):沿著豎直方向進(jìn)行計(jì)算,即每一列數(shù)據(jù)都是從上到下進(jìn)行計(jì)算。
- 表(橫穿,然后向下):走Z字形,先按橫向從左往右走,走到盡頭跳轉(zhuǎn)到下一行第一個(gè)位置,又開始從左往右走,直到走完最后一個(gè)數(shù)據(jù)。
- 表(向下,然后橫穿):先按縱向從上往下走,走到底跳轉(zhuǎn)到下一列第一個(gè)位置,又開始從上往下走,直到走完最后一個(gè)數(shù)據(jù)。
2.1.1表(橫穿)
2.1.2表(向下)
2.1.3表(橫穿,然后向下)
2.1.4表(向下,然后橫穿)
2.2基于“區(qū)”的計(jì)算
基于“區(qū)”計(jì)算是指,指視圖中的子視圖或子數(shù)據(jù)表,在計(jì)算時(shí),“區(qū)”不像“表”那樣貫穿到邊(底),而是根據(jù)分組,在分組中進(jìn)行獨(dú)立計(jì)算。分三種情況:
- 區(qū)(向下):在每個(gè)區(qū)中進(jìn)行
- 區(qū)(橫穿然后向下):在每個(gè)區(qū)中進(jìn)行
- 區(qū)(向下然后橫穿):在每個(gè)區(qū)中進(jìn)行
2.2.1區(qū)(向下)
2.2.2區(qū)(橫穿然后向下)
2.2.3區(qū)(向下然后橫穿)
2.3基于單元格計(jì)算
每個(gè)單元格只與自己進(jìn)行計(jì)算,與其它單元格均無聯(lián)系
3 特定維度表計(jì)算
Tableau的表計(jì)算封裝的表、區(qū)多種計(jì)算公式,方便日常操作。但是也有不足之處,就是把視圖中的“行/列”功能區(qū)的字段進(jìn)行交換,計(jì)算路徑還是沒有改變,使得計(jì)算值發(fā)生率變化。
要讓tableau在行列交換同時(shí),尋址字段和尋址順序同步調(diào)整,并使最終計(jì)算結(jié)果保持不變,則需要使用計(jì)算依據(jù)真中的另一種方式——特定維度。
舉例,地區(qū)、類別和訂單日期的交叉表,計(jì)算依據(jù)選擇了區(qū)(橫穿,然后向下),如下圖所示:
- ① 列功能區(qū)為訂單日期字段;行功能區(qū)為地區(qū)和類別字段。
- ② 計(jì)算依據(jù)為區(qū)(橫穿,然后向下)。
- ③ 箭頭方向?yàn)橄劝从唵稳掌跈M穿,再按類別向下
交換行和列后,即原來的地區(qū)字段交換到“列”功能區(qū)、訂單日期字段交換到“行”功能區(qū),計(jì)算依據(jù)此時(shí)仍然是表(橫穿,然后向下),即箭頭方向沒有改變,但計(jì)算結(jié)果卻發(fā)生了改變。從視圖可以看到,箭頭方向變?yōu)榱税搭悇e橫穿,按訂單日期向下,與行列字段交換前正好相反。
特定維度就是讀取數(shù)據(jù)的路徑和順序,tableau會(huì)根據(jù)選擇的特定維度,將這些維度的分類數(shù)據(jù)全部讀取,這樣就表示完成了一個(gè)分區(qū),然后再進(jìn)行下一個(gè)分區(qū)的讀取。
3.1單維度應(yīng)用
有三個(gè)維度,分別是訂單日期、地區(qū)、類別,這里依次選擇單個(gè)維度來觀察tableau讀取數(shù)據(jù)的路徑和順序的變化。
3.1.1單一維度——訂單日期
tableau會(huì)按照訂單日期字段中的2015、2016、2017、2018,依次讀取,從2015開始,到2018結(jié)束,這就完成了一個(gè)完整的讀取周期,然后又接著下一行重新讀取。
3.1.2單一維度——地區(qū)
tableau會(huì)按照地區(qū)字段中的東北、華北、華東、西北、西南、中南,依次讀取,從東北開始,到中南結(jié)束,這就完成了一個(gè)完整的讀取周期,對(duì)該視圖而言,也就完成了整個(gè)視圖數(shù)據(jù)的讀取。
3.1.2單一維度——類別
tableau會(huì)按照類別字段中的辦公用品、技術(shù)、家具,依次讀取,從辦公用品開始,到家具結(jié)束,這就完成了一個(gè)完整的讀取周期,然后又接著下一行重新開始讀取。
3.2雙維度應(yīng)用
視圖中,分別從訂單日期、地區(qū)、類別三個(gè)維度中,任意選擇兩個(gè)維度,通過維度的不同組合及不同順序,觀察tableau讀取數(shù)據(jù)的路徑和順序的變化。
所在級(jí)別
當(dāng)選擇了兩個(gè)維度的時(shí)候,計(jì)算依據(jù)窗口下方的“所在級(jí)別”選項(xiàng)卡變?yōu)榱丝蛇x擇狀態(tài),里面有一個(gè)選項(xiàng)叫“最深”,該選項(xiàng)的運(yùn)行邏輯是:勾選的維度自下而上讀取,簡(jiǎn)單的說就是,下面的先讀取,上面的后讀取。
3.2.1雙維度應(yīng)用——訂單日期維度和地區(qū)維度
按照讀取順序,分為訂單日期+地區(qū)以及地區(qū)+訂單日期。
3.2.1.1訂單日期+地區(qū)
- 按照“最深”原則,先讀取訂單日期,再讀取地區(qū)。
- 訂單日期有四個(gè),2015開始,2018結(jié)束
- 地區(qū)有六個(gè),東北開始,中南結(jié)束
- 讀取時(shí),先在東北對(duì)應(yīng)的訂單日期從左往右讀取,即2015開始到2018結(jié)束,然后接著從華北對(duì)應(yīng)的訂單日期從左往右讀取,2015開始到2018結(jié)束,一直讀到中南結(jié)束,至此完成一個(gè)完整的讀取周期。
3.2.1.2地區(qū)+訂單日期
- 按照“最深”原則,先讀取地區(qū),再讀取訂單日期。
- 地區(qū)有六個(gè),東北開始,中南結(jié)束
- 訂單日期有四個(gè),2015開始,2018結(jié)束
- 讀取時(shí),先在2015對(duì)應(yīng)的地區(qū)從上往下讀取,即東北開始到中南結(jié)束,然后接著從2016對(duì)應(yīng)的地區(qū)從上往下讀取,東北開始到中南結(jié)束,一直讀到2018結(jié)束,至此完成一個(gè)完整的讀取周期。
3.2.2雙維度應(yīng)用——訂單日期維度和類別維度
按照讀取順序,分為訂單日期+類別以及類別+訂單日期
3.2.2.1訂單日期+類別
- 按照“最深”原則,先讀取訂單日期,再讀取類別。
- 訂單日期有四個(gè),2015開始,2018結(jié)束
- 類別有三個(gè),辦公用品開始,家居結(jié)束
- 讀取時(shí),先在辦公用品對(duì)應(yīng)的訂單日期從左往右讀取,即2015開始到2018結(jié)束,然后接著從技術(shù)對(duì)應(yīng)的訂單日期從左往右讀取,2015開始到2018結(jié)束,一直讀到家具結(jié)束,至此完成一個(gè)完整的讀取周期。然后又接著下一行重新開始。此時(shí)的地區(qū)為分區(qū)字段。
3.2.2.1類別+訂單日期
- 按照“最深”原則,先讀取類別,再讀取訂單日期。
- 類別有三個(gè),辦公用品開始,家具結(jié)束
- 訂單日期有四個(gè),2015開始,2018結(jié)束
- 讀取時(shí),先在2015對(duì)應(yīng)的類別從上往下讀取,即辦公用品開始到家具結(jié)束,然后接著從2016對(duì)應(yīng)的類別從上往下讀取,辦公用品開始到家具結(jié)束,一直讀到2018結(jié)束,至此完成一個(gè)完整的讀取周期。然后接著往下一行重新開始。地區(qū)在這里是分區(qū)字段。
3.2.3雙維度應(yīng)用——地區(qū)維度和類別維度
按照讀取順序,分為地區(qū)+類別以及類別+地區(qū)。
3.2.3.1地區(qū)+類別
- 按照“最深”原則,先讀取地區(qū),再讀取類別。
- 地區(qū)有六個(gè),東北開始,中南結(jié)束
- 類別有三個(gè),辦公用品開始,家具結(jié)束
- 讀取時(shí),先在辦公用品對(duì)應(yīng)的地區(qū)從上往下讀取,即東北開始到中南結(jié)束,然后接著從技術(shù)對(duì)應(yīng)的地區(qū)從上往下讀取,東北開始到中南結(jié)束,至此完成一個(gè)完整的讀取周期。然后接著往下一列重新開始。訂單日期在這里是分區(qū)字段。
3.2.3.2類別+地區(qū)
-------------------------------------結(jié)束----------------------------------------------
總結(jié)
以上是生活随笔為你收集整理的交叉表 列字段排序_Tableau学习系列(8):表计算的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python 关闭窗口事件_python
- 下一篇: 抽象工厂模式_抽象工厂模式