Data Wrangler 在 VS Code 入門指南
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] > [變數] 面板中,在任何支援的資料物件旁邊,您都可以看到啟動 Data Wrangler 的按鈕。
- 如果您的 Notebook 中有 Pandas 資料框架,您現在可以在執行輸出資料框架的程式碼後,在儲存格底部看到 [在 Data Wrangler 中開啟 'df'] 按鈕 (其中 'df' 是資料框架的變數名稱)。這包括 1)
df.head()
、2)df.tail()
、3)display(df)
、4)print(df)
、5)df
。 - 在 Notebook 工具列中,選取 [檢視資料] 會顯示 Notebook 中每個支援的資料物件清單。然後您可以選擇要 Data Wrangler 中開啟的清單中的哪個變數。
直接從檔案啟動 Data Wrangler
您也可以直接從本機檔案 (例如 .csv
) 啟動 Data Wrangler。若要執行此操作,請在 VS Code 中開啟任何包含您要開啟的檔案的資料夾。在檔案總管檢視中,以滑鼠右鍵按一下檔案,然後按一下 [在 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 初始版本中目前支援的 Data Wrangler 作業。我們計劃在不久的將來新增更多作業。
作業 | 描述 |
---|---|
排序 | 將資料行排序為遞增或遞減 |
篩選 | 根據一或多個條件篩選資料列 |
計算文字長度 | 建立新的資料行,其值等於文字資料行中每個字串值的長度 |
獨熱編碼 | 將類別資料分割成每個類別的新資料行 |
多標籤二元化 | 使用分隔符號將類別資料分割成每個類別的新資料行 |
從公式建立資料行 | 使用自訂 Python 公式建立資料行 |
變更資料行類型 | 變更資料行的資料類型 |
捨棄資料行 | 刪除一或多個資料行 |
選取資料行 | 選擇要保留的一或多個資料行,並刪除其餘資料行 |
重新命名資料行 | 重新命名一或多個資料行 |
複製資料行 | 建立一或多個資料行的複本 |
捨棄遺失值 | 移除具有遺失值的資料列 |
捨棄重複的資料列 | 捨棄在一或多個資料行中具有重複值的所有資料列 |
填滿遺失值 | 以新值取代具有遺失值的儲存格 |
尋找與取代 | 以符合的模式取代儲存格 |
依資料行分組與彙總 | 依資料行分組與彙總結果 |
移除空格 | 從文字的開頭和結尾移除空格 |
分割文字 | 根據使用者定義的分隔符號將資料行分割成數個資料行 |
第一個字元大寫 | 將第一個字元轉換為大寫,其餘字元轉換為小寫 |
將文字轉換為小寫 | 將文字轉換為小寫 |
將文字轉換為大寫 | 將文字轉換為大寫 |
依範例字串轉換 | 當從您提供的範例中偵測到模式時,自動執行字串轉換 |
依範例日期時間格式化 | 當從您提供的範例中偵測到模式時,自動執行日期時間格式化 |
依範例新增資料行 | 當從您提供的範例中偵測到模式時,自動建立資料行。 |
縮放最小值/最大值 | 在最小值和最大值之間縮放數值資料行 |
四捨五入 | 將數字四捨五入到指定的小數位數 |
向下捨入 (floor) | 將數字向下捨入到最接近的整數 |
向上捨入 (ceiling) | 將數字向上捨入到最接近的整數 |
自訂作業 | 根據範例和現有資料行的衍生,自動建立新的資料行 |
如果缺少您希望在 Data Wrangler 中支援的作業,請在我們的 Data Wrangler GitHub 存放庫中提交功能要求。
修改先前的步驟
可以透過 [清理步驟] 面板修改產生的程式碼的每個步驟。首先,選取您要修改的步驟。然後,當您變更作業時 (透過程式碼或作業面板),資料變更的效果會在網格檢視中醒目提示。
編輯與匯出程式碼
在 Data Wrangler 中完成資料清理步驟後,有三種方法可以從 Data Wrangler 匯出清理後的資料集。
- 將程式碼匯出回 Notebook 並結束: 這會在您的 Jupyter Notebook 中建立一個新儲存格,其中包含您產生的所有資料清理程式碼,並封裝到 Python 函式中。
- 將資料匯出到檔案: 這會將清理後的資料集儲存為電腦上的新 CSV 或 Parquet 檔案。
- 將程式碼複製到剪貼簿: 這會複製 Data Wrangler 為資料清理作業產生的所有程式碼。
搜尋資料行
若要在資料集中尋找特定資料行,請從 Data Wrangler 工具列選取 [前往資料行],並搜尋對應的資料行。
疑難排解
一般核心連線問題
如需一般連線問題,請參閱上方「連線到 Python 核心」章節,以取得連線的替代方法。若要偵錯與本機 Python 解譯器選項相關的問題,可能修正問題的一種方法是安裝不同版本的 Jupyter 和 Python 擴充功能。例如,如果已安裝穩定版本的擴充功能,您可以安裝預先發行版本 (或反之亦然)。
若要清除已快取的核心,您可以從命令面板執行 Data Wrangler: 清除快取的執行階段
命令 ⇧⌘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
資料與遙測
適用於 Visual Studio Code 的 Microsoft Data Wrangler 擴充功能會收集使用狀況資料,並將其傳送給 Microsoft,以協助改善我們的產品和服務。請閱讀我們的隱私權聲明以深入了解。此擴充功能遵循 telemetry.telemetryLevel
設定,您可以在 https://vscode.dev.org.tw/docs/getstarted/telemetry 深入了解。