在進行數據分析和可視化之前,經常需要先“清洗”數據。這意味著什么?可能有些詞條列表里是“New York City”,而其他人寫成“New York, NY”。然而,你在看到某些模式前得將各種各樣的輸入詞匯標準化。又或者,出現一些數值輸入錯誤,錯別字什么的。
有很多工具都可以實現你想要的功能,但大多都是付費的。對于專業人士來說,這些成本是值得的,但對于時不時才使用的業余人士來說,未免有些浪費。下面介紹的兩個工具最偉大的地方就是——它們是免費的!
DataWrangler
它是做什么的:這個基于網絡的服務是斯坦福大學的可視化組設計來清洗和重排數據的,因此,它的格式適用于電子表格等應用程序。
點擊一行或一列,DataWrangler會有修改的建議。例如,你點擊了一行空行,一些建議就出彈出來,像“刪除行”或“刪除空行”等。
同時,DataWrangler有一個歷史記錄,允許你很容易地實現撤消功能。
優點:文本編輯非常簡單。例如,當我選擇大標題為“Reported crime in Alabama”的樣本數據的某行的“Alabama”,然后選擇另一組數據的“Alaska”,它會建議提取每州的名字。把鼠標停留在建議上,就可以看到用紅色突出顯示的行。
缺點:我發現當我試圖探索DataWrangler的選項時會發生一些預料之外的變化。我不得不經常點擊“清空”進行重設。還有,有的建議是沒用的(當某行是空行的時候,“把行提到標題行”似乎是個奇怪的建議),還有,有的建議很難理解(”fold split 1 using 2 as key”)。
DataWrangler是基于網絡的服務,非常方便使用。但不要忘記,代價是必須把數據上傳到外部網站。也就是說,對于敏感的內部數據,DataWrangler就不是合適的選擇了。不過,未來會有獨立的桌面版本。另一個必須考慮的事情是,DataWrangler是用現行的alpha碼編寫的,它的創建者說它(alpha碼)還在改進中。
技能水平:高級新手
運行環境:任何網絡瀏覽器
在這里還是要推薦下我自己建的大數據學習交流扣扣群:378144993,群里都是學大數據開發的,如果你正在學習大數據?,小編歡迎你加入,大家都是軟件開發黨,不定期分享干貨(只有大數據軟件開發相關的),包括我自己整理的一份最新的大數據進階資料和高級開發教程,歡迎進階中和進想深入大數據的小伙伴加入。
Google Refine
它是做什么的:第一眼看Google Refine的文本和數字時,可以將它描述為電子表格。像Excel一樣,它可以導入導出多種格式的數據,如標簽或逗號分隔的文本文件、Excel、XML和JSON文件。
Refine設有內置算法,可以發現一些拼寫不一樣但實際上應分為一組的文本。導入你的數據后,選擇編輯單元格->聚類,編輯,然后選擇要用的算法。
Refine運行后,你得決定接受或不接受每條建議。例如,你可以同意將Microsoft和Microsoft Inc作為同個組合,但不同意將Coach Inc 和CQG Inc作為同個組合。假如它提供太少或太多的建議,你可以更改建議功能的強度。
還有數據選項,提供快速簡單的數據分布概貌。這個功能可以揭示那些可能由于輸入錯誤導致的異?!?,工資記錄不是80,000美元而竟然是800,000美元;或指出不一致的地方——例如薪酬數據記錄之間的差異,有的是計時工資,有的是每周支付,有的是年薪。
除了數據管家功能,Google Refine還提供了一些有用的分析工具,例如排序和篩選。
優點:一旦熟悉Refine的命令和功能,它將是一個強大的數據處理和分析工具,既功能強大又易用。每個操作的撤消/重做列表讓你隨時回到想要的狀態。文本編輯應用Java正則表達式,允許你查找模式(例如,3個數字后跟著兩個數位)或特定的字符串或數值。
最后,雖然Refine是一個基于瀏覽器的應用程序,但適用于桌面文件,因此你的數據可以保留在本地。
缺點:盡管Refine看起來像電子表格,但你無法用它實現典型的電子表格計算。因此,你必須將數據導出到常見的電子表格應用。如果你的數據集很大,得留出一些時間仔細檢查Refine的建議,這需要好些時間。還有,這點因數據集而異,當你準備合并一些文本項時,很有可能會得到一些錯的建議或忽略一些問題——或兩者兼有。
技能水平:高級新手。
運行環境:Windows、Mac OS、Linux
感謝您的觀看,如有不足之處,歡迎批評指正。最后祝福所有遇到瓶頸的大數據程序員們突破自己,祝福大家在往后的工作與面試中一切順利