處理前的準備
檢查索引與列名
在處理內容之前,需要先看看索引或列名是否有意義,若索引和列名都是亂七八糟的,應該對他們進行重命名或者重新排序,以便我們理解數據。
清洗數據
清洗數據原則
針對數據內容,一般先解決結構性問題,再處理內容性問題。整潔數據的特點是:
1.每列是一個變量(如身高
列不應混合cm
和m
單位)
2.每行是一個觀察值(如學生考試成績不應跨行存儲)
3.每個單元格是一個值(如姓名
列不應包含張三;李四
)
任何不符合以上三個特點的數據都是亂數據。
針對亂數據的清洗
1.如果每列是觀察值,每行是變量,我們就要對行和列進行轉置(也就是讓行和列對調);
2.如果不符合每列是一個變量,而是包含了多個,我們就要對列進行拆分,把多的列分到其他列去,有的時候光拆分還不夠,還需要進行重塑,確保每列只包含一種變量;
3.如果不符合每行是一個觀察值,而是多個觀察值,我們就要對行進行拆分,讓每個觀察值為獨立的一行,還有時候光拆分還不夠,還需要進行重塑,確保每行只包含一個觀察值。
很多時候清理前的數據是寬數據,清理后的數據是長數據,清理的目的是為了后續能更高效地用程序處理數據,而不是更方便地讓人類理解,所以若你覺得有些清理前的數據反而更直觀易懂也是正常的。