作者:Anna Kayfitz,CEO of StrategicDB Corp
翻譯:顧宇華 校對:楊光
本文約1700字,建議閱讀5分鐘。
確保資料乾凈整潔應該始終是資料科學工作流程中首要也是最重要的部分。
資料清理是資料科學家最重要和最耗時的任務之一。以下是用於資料清理的頂級R包。
每天有數百萬或數十億的資料元素進入您的企業,其中不可避免的存在一些缺乏建立高效業務模型的必要質量的資料元素。然而,確保資料乾凈整潔應該始終是資料科學工作流程中首要也是最重要的部分。因為沒有它,您將很難看到重要的內容,並可能由於資料重覆,資料異常或缺少資訊等原因做出錯誤的決策。
R,作為一種能夠應用於統計計算和圖形的開源語言,是最常用和最強大的資料程式設計工具之一。R提供了建立資料科學專案所需的所有工具,但是不管利用任何一種工具,它只能做到提供它接受到的資料相等同的資訊。但是擁有了這些工具,R環境中有許多庫可以在任何專案開始之前進行資料處理和操作。
探索資料
大多數您已經匯入的用於探索資料系列的工具已存在於R平臺中。
摘要(資料)
這個方便的命令只是概述了所有資料屬性,顯示了每個屬性的最小值,最大值,中值,平均值和類別拆分。這是一種快速發現任何潛在資料異常的好方法。
接下來,您可以使用直方圖來更好地理解資料的分佈。這將視覺化顯示資料集或您特別希望觀察的任何數字列中的任何異常值。
plyr包
您需要安裝plyr軟體包以建立直方圖,使用標準R功能來安裝庫。
Install.packages(“plyr”)
Library(plyr)
Hist(YOUR_DATASET_NAME)
這能夠建立資料的視覺化,以快速發現任何異常。箱形圖視覺化使用相同的包,但分成四分位數以進行離群檢測。這兩個組合將很快告訴您是否需要限制資料集或僅在任何演演算法或統計建模中使用它的某些部分。
糾正錯誤
R有許多預先構建的方法來糾正資料錯誤,例如轉換值,就像在Excel或SQL中那樣,使用簡單的邏輯,例如as.charater()將列轉換為字串。
但是,如果要開始更正在直方圖或箱形圖中看到的錯誤,則可以選擇其他軟體包執行此操作。
stringr包
stringr可以透過幾種不同的方式幫助清理資料,包括修剪空格和替換某些不必要的單詞。這些是非常標準的程式碼,結構為str_trim(YOUR_DATA_FIELD),它只是刪除了空格。
但是,如何消除我們直方圖告訴我們的異常?它需要比這更複雜,但作為一個基本的例子,我們可以告訴R用該欄位的中值替換我們欄位中的所有異常值。這將把所有東西都放在一起並消除異常偏見。
缺少值
在R中檢查不完整的資料並對該欄位執行和操作非常簡單。例如,此函式將完全消除所選資料列中缺少的值。
Na.omit(YOUR_DATA_COLUMN)
有類似的選項可以用0或N / A替換空白值,具體取決於欄位型別,並提高資料集的一致性。
tidyr包
tidyr包旨在整理您的資料。它的工作原理是識別資料集中的變數,並使用提供的工具將它們移動到具有三個主要功能的列或gather(),separate()和spread()。
gather()函式採用多列並將它們收集到鍵值對中。舉個例子,假設您有考試成績資料。
名稱 |
考試A |
考試B |
約翰 |
55 |
80 |
麥克 |
76 |
90 |
山姆 |
45 |
75 |
gather收集功能透過將其轉換為可用的列來完成。
名稱 |
考試 |
成績 |
約翰 |
A |
55 |
麥克 |
A |
76 |
山姆 |
A |
45 |
約翰 |
B |
80 |
麥克 |
B |
90 |
山姆 |
B |
75 |
現在我們真的能夠分析考試成績。單獨和傳播函式做類似的事情,一旦你有了包,你可以探索,但最終根據需要你的資料。
這裡有一些其他的註釋包可能對R中的資料清理有用:
-
Purr包
purr包專為資料整理而設計。它與plyr包非常相似,雖然年齡較大,但有些使用者只是覺得它的使用更容易,功能也更標準化。
-
sqldf包
很多R使用者更習慣用SQL語言而不是R編碼。這個函式允許你在R studio中編寫SQL程式碼來選擇你的資料元素
-
Janitor包
該軟體包能夠透過多個列查詢重覆項,並輕鬆地從您的資料框中建立友好列。它甚至還有一個get_dupes()函式,用於在多行資料中查詢重覆值。如果您希望以更高階的方式重覆資料刪除,例如,查詢不同的組合或使用模糊邏輯,您可能需要檢視重覆資料刪除工具。
-
splitstackshape包
這是一個較舊的包,可以使用資料框列中的逗號分隔值。用於調查或文字分析準備。
R擁有大量的軟體包,本文只是觸及了它可以做的事情的錶面。隨著新的庫一直湧現,在開始任何新專案之前進行研究並獲得正確的庫是非常重要的。
學習資源:
-
線上和基於網路:分析,資料挖掘,資料科學,機器學習教育
https://www.kdnuggets.com/education/online.html
-
分析,資料科學,資料挖掘和機器學習軟體
https://www.kdnuggets.com/software/index.html
相關文章:
-
不要在真空中進行分析
https://www.kdnuggets.com/2019/02/mode-dont-do-analysis-vacuum.html
-
在Jupyter中執行R和Python
https://www.kdnuggets.com/2019/02/running-r-and-python-in-jupyter.html
-
2018年資料科學和人工智慧的前七大R套餐
https://www.kdnuggets.com/2019/01/vazquez-2018-top-7-r-packages.html
作者簡介:
Anna Kayfitz,StrategicDB Corp執行長,該公司是一家資料清理和分析公司。她擁有Schulich商學院的MBA學位,在建立StrategicDB之前,他在資料分析和市場營銷方面工作了10多年。
原文標題:
Top R Packages for Data Cleaning
原文連結:
https://www.kdnuggets.com/2019/03/top-r-packages-data-cleaning.html
譯者簡介:顧宇華,帝國理工與IE商學院畢業生,現為SxGroup諮詢實習生。熱情活潑,積極樂觀,對資料科學充滿熱情。
朋友會在“發現-看一看”看到你“在看”的內容