數據清洗
習題預習
User ask:
給我5題Data Cleaning的中文問題
ChatGPT answer:- 數據中是否存在缺失值?
- 是否有重複的數據?
- 是否存在錯誤的數據格式或數值?
- 是否有不一致的數據標準或統一編碼?
- 是否存在不需要的數據或雜訊數據?
說明知識
User ask:
以中文說明Data Cleaning並舉例
ChatGPT answer:Data Cleaning是指對於原始資料進行清理的過程。也就是說,我們需要對資料進行篩選、去重、替代值、標準化、缺失值處理等操作,使原始資料更加適合進行分析和應用。
例如,如果我們有一份學生的資料,其中可能存在著錯誤或不一致的地方,如名字拼寫不同、性別不一致、信息缺失等。這就需要進行Data Cleaning的處理。我們可以通過各種渠道的檢查和過濾來修改及補齊這些資料,使得每筆資料的結構和內容都是一致的,進一步方便後續的統計分析及應用。
條列重點
User ask:
以中文條列Data Cleaning的重點
ChatGPT answer:- 去除重複資料
- 刪除含有缺失值的資料
- 處理不一致的資料 (如大小寫、縮寫、拼寫不正確等)
- 處理異常值 (如極端值、錯誤值、不合理值等)
- 處理資料類型 (如數字轉換為文字、類別轉換為數字等)
- 清除格式錯誤 (如日期格式、時間格式等)
- 統一資料格式 (如統一日期的格式、統一貨幣的單位等)
- 處理資料不平衡的問題 (如類別分佈不均等)
- 探索性資料分析 (EDA) 從資料中發現隱含的問題以及解決方案
- 檢查資料的完整性 (如是否有資料遺失等)
知識測驗
User ask:
以中文給我5題Data Cleaning的中等難度問題,並在後面列出答案
ChatGPT answer:- 在一個資料庫中,有一欄位的數值型態應為整數,但有部分值卻是浮點數,請問應該如何進行資料清理?
- 在一個 CSV 檔案中,有一欄位紀錄電話號碼,但部分電話號碼格式錯誤(例如遺漏區碼、多餘數字),請問應該如何進行資料清理?
- 在一個資料庫中,有一欄位紀錄客戶的名稱,但有些名字格式錯誤(例如大小寫、部分名字缺失),請問應該如何進行資料清理?
- 在一個 CSV 檔案中,有一欄位紀錄日期,但日期格式錯誤(例如年份、月份、日期順序顛倒),請問應該如何進行資料清理?
- 在一個資料庫中,有一欄位紀錄商品的價格,但部分價格格式錯誤(例如多餘符號、少數商品無價格),請問應該如何進行資料清理?
答案
- 可以透過程式碼將浮點數轉換為整數,例如使用 Python 的 int() 函數。
- 可以透過程式碼檢查電話號碼是否符合規定格式,例如使用 Python 的正則表達式。
- 可以透過程式碼將名字轉換成正確格式,例如使用 Python 的 capitalize() 函數。對於缺失的名字部分,可以考慮從其他資料欄位中尋找補齊。
- 可以透過程式碼將日期轉換成正確格式,例如使用 Python 的 datetime.strptime() 函數。
- 可以透過程式碼檢查價格是否符合規定格式,例如使用 Python 的正則表達式。對於無價格的商品,可以考慮以平均價格或是其他類似商品的價格填補。