VS Code 中的 Data Wrangler 入門指南
Data Wrangler 是一個以程式碼為中心的 VS Code 和 VS Code Jupyter Notebook 整合的資料檢視和清理工具。它提供了一個豐富的使用者介面來檢視和分析您的資料,顯示有洞察力的列統計資訊和視覺化,並在您清理和轉換資料時自動生成 Pandas 程式碼。
以下是從 Notebook 開啟 Data Wrangler 以使用內建操作分析和清理資料的示例。然後,會自動生成的程式碼將被匯出回 Notebook。

本文件涵蓋了如何
- 安裝和設定 Data Wrangler
- 從 Notebook 啟動 Data Wrangler
- 從資料檔案啟動 Data Wrangler
- 使用 Data Wrangler 探索您的資料
- 使用 Data Wrangler 對您的資料執行操作和清理
- 將資料整理程式碼編輯並匯出到 Notebook
- 故障排除和提供反饋
設定您的環境
- 如果您還沒有安裝,請安裝 Python。重要提示: Data Wrangler 僅支援 Python 3.8 或更高版本。
- 安裝 Visual Studio Code。
- 安裝 Data Wrangler 擴充套件
當您第一次啟動 Data Wrangler 時,它會詢問您要連線到哪個 Python 核心。它還會檢查您的計算機和環境,以檢視是否安裝了所需的 Python 包,例如 Pandas。
以下是 Python 和 Python 包的所需版本列表,以及它們是否由 Data Wrangler 自動安裝
| 名稱 | 最低要求版本 | 自動安裝 |
|---|---|---|
| Python | 3.8 | 否 |
| pandas | 0.25.2 | 是 |
如果您的環境中找不到這些依賴項,Data Wrangler 將嘗試使用 pip 為您安裝它們。如果 Data Wrangler 無法安裝依賴項,最簡單的解決方法是手動執行 pip install,然後再次啟動 Data Wrangler。這些依賴項是 Data Wrangler 生成 Python 和 Pandas 程式碼所必需的。
開啟 Data Wrangler
無論何時您在 Data Wrangler 中,您都處於一個沙盒環境中,這意味著您可以安全地探索和轉換資料。原始資料集在您顯式匯出更改之前不會被修改。
從 Jupyter Notebook 啟動 Data Wrangler
有三種方法可以從您的 Jupyter Notebook 啟動 Data Wrangler

- 在Jupyter > Variables 面板中,在任何受支援的資料物件旁邊,您都會看到一個啟動 Data Wrangler 的按鈕。
- 如果您在 Notebook 中有一個 Pandas 資料框,在執行輸出資料框的程式碼後,您現在會在單元格底部看到一個Open 'df' in Data Wrangler 按鈕(其中 'df' 是您資料框的變數名)。這包括 1)
df.head(),2)df.tail(),3)display(df),4)print(df),5)df。 - 在 Notebook 工具欄中,選擇View data 會彈出一個包含 Notebook 中每個受支援資料物件的列表。然後,您可以選擇列表中要 Populate Data Wrangler 的變數。
直接從檔案啟動 Data Wrangler
您也可以直接從本地檔案(例如 .csv)啟動 Data Wrangler。為此,請在 VS Code 中開啟包含您想開啟的檔案的任何資料夾。在檔案資源管理器檢視中,右鍵單擊檔案,然後單擊Open in Data Wrangler。

Data Wrangler 目前支援以下檔案型別
.csv/.tsv.xls/.xlsx.parquet
根據檔案型別,您可以指定檔案的分隔符和/或工作表。

您還可以將這些檔案型別設定為預設使用 Data Wrangler 開啟。
UI 導覽
Data Wrangler 在處理資料時有兩種模式。每種模式的詳細資訊將在下面的後續部分中解釋。
- 檢視模式:檢視模式優化了介面,以便您可以快速檢視、過濾和排序資料。這種模式非常適合對資料集進行初步探索。
- 編輯模式:編輯模式優化了介面,以便您可以對資料集應用轉換、清理或修改。當您在介面中應用這些轉換時,Data Wrangler 會自動生成相關的 Pandas 程式碼,並且可以將其匯出回您的 Notebook 以供重用。
注意:預設情況下,Data Wrangler 在檢視模式下開啟。您可以在設定編輯器中更改此行為 。

檢視模式介面

-
資料摘要面板顯示有關您的整個資料集或特定列(如果已選擇)的詳細摘要統計資訊。
-
您可以從列的標題選單中對該列應用任何資料過濾器/排序。
-
在 Data Wrangler 的檢視或編輯模式之間切換,以訪問內建的資料操作。
-
快速洞察標頭是您可以快速檢視每列寶貴資訊的地方。根據列的資料型別,快速洞察顯示資料的分佈或資料點的頻率,以及缺失值和唯一值。
-
資料網格提供了一個可滾動窗格,您可以在其中檢視整個資料集。
編輯模式介面
切換到編輯模式可以在 Data Wrangler 中啟用附加功能和使用者介面元素。在以下截圖中,我們使用 Data Wrangler 將最後一列中的缺失值替換為該列的中位數。

-
操作面板是您可以搜尋 Data Wrangler 所有內建資料操作的地方。操作按類別組織。
-
清理步驟面板顯示了先前應用的所有操作的列表。它使使用者能夠撤消特定操作或編輯最新的操作。選擇一個步驟將突出顯示資料差異檢視中的更改,並顯示與該操作相關的生成程式碼。
-
匯出選單允許您將程式碼匯出回 Jupyter Notebook 或將資料匯出到新檔案。
-
當您選中一個操作並預覽其對資料的影響時,網格將疊加您對資料所做的更改的資料差異檢視。
-
程式碼預覽部分顯示了 Data Wrangler 在選擇操作時生成的 Python 和 Pandas 程式碼。當沒有選擇操作時,它保持為空。您可以編輯生成的程式碼,這會導致資料網格突出顯示對資料的影響。
Data Wrangler 操作
內建的 Data Wrangler 操作可以從操作面板中選擇。

下表列出了 Data Wrangler 在初始釋出時當前支援的資料操作。我們計劃在不久的將來新增更多操作。
| 操作 | 描述 |
|---|---|
| 排序 | 按升序或降序對列進行排序 |
| 過濾 | 根據一個或多個條件過濾行 |
| 計算文字長度 | 建立新列,其值等於文字列中每個字串值的長度 |
| 獨熱編碼 | 將分類資料拆分為新列,每列代表一個類別 |
| 多標籤二值化器 | 使用分隔符將分類資料拆分為新列,每列代表一個類別 |
| 從公式建立列 | 使用自定義 Python 公式建立列 |
| 更改列型別 | 更改列的資料型別 |
| 刪除列 | 刪除一個或多個列 |
| 選擇列 | 選擇要保留的一個或多個列,並刪除其餘列 |
| 重新命名列 | 重新命名一個或多個列 |
| 克隆列 | 建立一列或多列的副本 |
| 刪除缺失值 | 刪除具有缺失值的行 |
| 刪除重複行 | 刪除在一列或多列中具有重複值的行 |
| 填充缺失值 | 用新值替換缺失值的單元格 |
| 查詢和替換 | 替換與模式匹配的單元格 |
| 按列分組並聚合 | 按列分組並聚合結果 |
| 刪除空格 | 刪除文字開頭和結尾的空格 |
| 拆分文字 | 根據使用者定義的分隔符將一列拆分為多列 |
| 首字母大寫 | 將第一個字元轉換為大寫,其餘字元轉換為小寫 |
| 轉換為小寫 | 轉換為小寫 |
| 轉換為大寫 | 轉換為大寫 |
| 按示例轉換字串 | 根據您提供的示例檢測到的模式自動執行字串轉換 |
| 按示例格式化日期時間 | 根據您提供的示例檢測到的模式自動執行日期時間格式化 |
| 按示例建立新列 | 根據您提供的示例檢測到的模式自動建立新列。 |
| 縮放最小值/最大值 | 將數值列縮放到最小值和最大值之間 |
| 四捨五入 | 將數字四捨五入到指定的小數位數 |
| 向下取整(floor) | 將數字向下取整到最接近的整數 |
| 向上取整(ceiling) | 將數字向上取整到最接近的整數 |
| 自定義操作 | 根據示例和現有列的推導自動建立新列 |
如果您缺少某個操作並且希望在 Data Wrangler 中看到它得到支援,請在我們的 Data Wrangler GitHub 儲存庫中提交功能請求。
修改之前的步驟
生成的程式碼的每一步都可以透過清理步驟面板進行修改。首先,選擇要修改的步驟。然後,當您透過程式碼或操作面板對操作進行更改時,更改對資料的影響將在網格檢視中高亮顯示。

編輯和匯出程式碼
在 Data Wrangler 中完成資料清理步驟後,有三種方法可以將清理後的資料集匯出:
- 將程式碼匯出回 Notebook 並退出: 這將在您的 Jupyter Notebook 中建立一個新單元格,其中包含您生成的所有資料清理程式碼,並打包成一個 Python 函式。
- 將資料匯出到檔案: 這會將清理後的資料集儲存為 CSV 或 Parquet 檔案到您的計算機。
- 複製程式碼到剪貼簿: 這會複製 Data Wrangler 為資料清理操作生成的所有程式碼。

搜尋列
要查詢資料集中特定列,請從 Data Wrangler 工具欄中選擇Go to column 並搜尋相應的列。

故障排除
通用核心連線問題
對於一般的連線問題,請參閱上面“連線到 Python 核心”部分中有關連線的其他方法。要除錯與本地 Python 直譯器選項相關的問題,一種潛在的修復方法是安裝不同版本的 Jupyter 和 Python 擴充套件。例如,如果安裝了穩定版本的擴充套件,您可以安裝預釋出版本(反之亦然)。
要清除已快取的核心,您可以從命令面板執行 Data Wrangler: Clear cached runtime 命令 ⇧⌘P (Windows, Linux Ctrl+Shift+P)。
開啟資料檔案時出現 UnicodeDecodeError
如果您在直接從 Data Wrangler 開啟資料檔案時遇到 UnicodeDecodeError,則可能是由以下兩個問題引起的:
- 您要開啟的檔案具有
UTF-8以外的編碼。 - 檔案已損壞。
要解決此錯誤,您需要從 Jupyter Notebook 啟動 Data Wrangler,而不是直接從資料檔案啟動。使用 Jupyter Notebook 使用 Pandas 讀取檔案,例如使用 read_csv 方法。在 read 方法中,使用 encoding 和/或 encoding_errors 引數來定義要使用的編碼或如何處理編碼錯誤。如果您不知道哪種編碼可能適用於此檔案,可以嘗試使用 chardet 等庫來嘗試推斷出一種有效的編碼。
問題和反饋
如果您遇到問題、有功能請求或任何其他反饋,請在我們的 GitHub 儲存庫中提交 Issue:https://github.com/microsoft/vscode-data-wrangler/issues/new/choose
資料和遙測
Microsoft Data Wrangler Visual Studio Code 擴充套件收集使用資料並將其傳送給 Microsoft,以幫助改進我們的產品和服務。請閱讀我們的 隱私宣告以瞭解更多資訊。此擴充套件尊重 telemetry.telemetryLevel 設定,您可以訪問 https://vscode.com.tw/docs/configure/telemetry 瞭解更多資訊。