在數據分析和建模的過程中,相當多的時間要用在數據准備上:加載、清理、轉換以及重塑。這些工作會占到分析師時間的80%或更多。有時,存儲在文件和數據庫中的數據的格式不適合某個特定的任務。許多研究者都選擇使用通用編程語言(如Python、Perl、R或Java)或UNIX文本處理工具(如sed或awk)對數據格式進行專門處理。幸運的是,pandas和內置的Python標准庫提供了一組高級的、靈活的、快速的工具,可以讓你輕松地將數據規整為想要的格式。
如果你發現了一種本書或pandas庫中沒有的數據操作方式,請在郵件列表或GitHub網站上提出。實際上,pandas的許多設計和實現都是由真實應用的需求所驅動的。
在本章中,我會討論處理缺失數據、重復數據、字符串操作和其它分析數據轉換的工具。下一章,我會關注於用多種方法合並、重塑數據集。
在許多數據分析工作中,缺失數據是經常發生的。pandas的目標之一就是盡量輕松地處理缺失數據。例如,pandas對象的所有描述性統計默認都不包括缺失數據。
缺失數據在pandas中呈現的方式有些不完美,但對於大多數用戶可以保證功能正常。對於數值數據,pandas使用浮點值NaN(Not a Number)表示缺失數據。我們稱其為哨兵值,可以方便的檢測出來:
In [10]: string_data