Tableau 之二 數據整合


數據整合

完成與數據源的連接后,需要對來自不同數據源、多個數據表的數據進行融合、聯接等操作,同時還要選擇適合的數據整合方式,本節內容包括:

  • 數據聯接
  • 數據合並
  • 數據加載

數據聯接

聯接字段

當需要從多個數據表中獲取數據,則要用到數據聯接操作。為了操作直觀、簡單,繼續使用自制的數據集demo,包括“書籍”和“作者”兩張數據表,其中,“書籍”數據表包含書名、作者、作者ID、出版社4個字段,“作者” 數據表包含作者、作者ID、國籍3個字段”。

圖:數據集demo數據表

圖:數據集demo數據表

如果打算分析書名、作者以及作者國籍的有關情況,就要將兩張表連接在一起,這兩張表有兩個相同字段,分別是“作者”和“作者ID”,一般在進行數據連接時,如果既有名稱又有ID,通常會選擇與ID有關的字段作為連接字段,因此,上面兩張表就通過“作者ID”進行聯接。

聯接方式

目前,tableau中的數據聯接方式分為四種,分別是內聯接、左聯接、右聯接和完全外部聯接。通常情況,tableau會自動判斷兩張表的同類字段並進行關聯,如果關聯不正確,可以通過手動方式進行關聯。

圖:tableau中的四種聯接方式

圖:tableau中的四種聯接方式

  • 內聯接

使用內聯接合並數據表時,生成的新表僅保留兩張數據表中具有相同關鍵字段的行。

對上面數據集demo的兩張數據表使用內連接,生成的新表將兩張數據表中,具有相同“作者ID”的行合並在一起,其余行則被剔除在外(作者ID從A015-A022被剔除在外,紅色虛線框部分)。

圖:內連接示例

圖:內連接示例

  • 左聯接

使用左聯接時,生成的新表包含左側表中所有值以及右側表中相對應的匹配值。

使用左聯接后,生成的新表包含了“書籍”數據表中的所有行,並與“作者”數據表中,具有相同作者ID的行合並在了一起。需要注意的是,如果右側表(“作者”數據表)中,沒有與左側表(“書籍”數據表)相匹配的項,合並后的新表中,對應數據網格則會顯示null。

圖:左聯接示例

圖:左聯接示例

  • 右聯接

使用右聯接時,生成的新表包含右側表中所有值以及左側表中相對應的匹配值。

與左聯接正好相反,使用右聯接后,生成的新表包含了“作者”數據表中的所有行,並與“書籍”數據表中,具有相同作者ID的行合並在了一起。需要注意的是,如果左側表(“書籍”數據表)中,沒有與右側表(“作者”數據表)相匹配的項,合並后的新表中,對應數據網格則會顯示null。

圖:右聯接示例

圖:右聯接示例

  • 完全外部聯接

使用完全外部連接時,生成的新表將包含兩個表中的所有值。采取這種方式時,如果一張表的值在另一張表中沒有匹配項,則在對應數據網格中顯示為null。

使用完全外部聯接后,生成的新表包含了“作者”數據表中的所有行,以及“書籍”數據表中的所有行,同時將兩個數據表中,作者ID相同的行合並在了一起。在“書籍”或“作者”數據表的任一行中,如果以作者ID為關鍵字段匹配不到任何項,則會在對應數據網格中顯示為null。

圖:完全外部聯接示例

圖:完全外部聯接示例

數據合並

當需要將有多張數據結構一致的表格整合匯總在一起時,則可以使用數據合並。對於數據聯接和數據合並的簡單理解,數據聯接是橫向擴展數據表的字段,縱向的數據行數不會變得更多,而數據合並正好相反,它是縱向增加數據行數,橫向的數據表字段不會變得更多。

要進行數據合並操作,每個表必須具有相同的字段數,並且相關字段必須具有匹配的字段名稱和數據類型

手動數據合並

為簡單並且直觀體驗數據合並操作,先建立“書籍1”和“書籍2”兩張數據表,這兩張表的數據結構完全一致,均包括書名、作者、作者ID、出版社4個字段,同時數據類型也一致。

圖:手動數據合並數據表demo

圖:手動數據合並數據表demo

 

手動數據合並操作步驟:

  1. 在tableau工作表區“新建並集”,並將需要合並的數據表——“書籍1”和“書籍2”拖入彈出的並集(手動)對話框;
  2. tableau生成合並后的新數據表,該表包含“書籍1”和“書籍2”的所有數據,並且各字段一一對應。需要注意的是,生成的新表中,新增了sheet和table name兩個字段,用於說明並集中的值的來源信息。

圖:手動數據合並操作步驟

圖:手動數據合並操作步驟

自動數據合並

如果需要合並的數據並不是來自同一數據源,比如來自多個excel表,就可以使用數據合並中的“通配符搜索”完成合並工作。新建三張excel數據表,分別是“合並測試3demo”、“合並測試4demo”、“合並測試5demo”,3張數據表均包含書名、作者、作者ID、出版社4個字段。

圖:自動數據合並數據表demo

圖:自動數據合並數據表demo

 

自動數據合並操作步驟:

1.將准備合並的Excel數據表放置到同一個文件夾,在工作表區執行“新建並集”操作。

  • 在彈出的“並集”對話框中選擇“通配符(自動)”;

  • 在“工作簿”位置,將匹配內容改寫為“合並數據*”,其中“合並數據”是共有的名稱,星號是通配符,這里用於匹配3、4、5三個數字。

2.tableau生成合並后的新數據表,該表包含“合並測試3demo”、“合並測試4demo”、“合並測試5demo”的所有數據。生成的新表新增path、sheet兩個字段,用於說明並集中的值的來源路徑及表名稱。

圖:自動數據合並操作步驟

圖:自動數據合並操作步驟

數據加載

tableau中的數據載入有兩種方式,分別是實時連接和數據提取。與數據源完成連接后,將某工作表拖拽至畫布區,就可以在畫布區看到“連接”方式的選擇,分別是“實時”和“數據提取”。

圖:數據連接方式

圖:數據連接方式

 

“實時連接”:直接從數據源實時查詢獲取數據信息,tableau不對源數據進行存儲。

“數據提取”:將數據源的數據保存到本地計算機,大幅縮短tableau查詢載入源數據的時間。

選擇數據提取后,可以在彈出窗口繼續設定數據提取的有關細節,如通過篩選器確定要提取哪一部分數據。這里將“出版社”字段添加到了篩選器,可以在彈出的對話框中確定需要篩選的具體出版社,以進一步縮小數據提取范圍;還可以確定提取的數據是所有行,還是增量部分,又或是前多少行數據;也可以通過通配符、條件等方式選擇需要提取的數據。

圖:數據提取示例

圖:數據提取示例

“實時”和“數據提取”的選擇

在實際運用中,可結合實際選擇最適合的數據加載方式確保高效完成數據分析工作。

何時選擇“數據提取”:

  • 不便於實時連接數據源,如數據是通過本地服務器獲取,但又需要在別的電腦進行分析時,可以通過”數據提取“將所需分析的數據保存到本地電腦。
  • 分析的數據量較大,需要提高數據載入效率,降低源數據庫的訪問壓力時,可以通過數據提取將數據轉移到本地計算機。

何時選擇“實時連接”:

  • 源數據的保密性要求較高,處於安全考慮不希望保存到本地時,可以采取實時連接的方式。
  • 要實時更新源數據信息,並且對實時性的要求較高,可以選擇實時連接的方式。

本章來源


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM