A. 大數據處理技術之數據清洗
我們在做數據分析工作之前一定需要對數據進行觀察並整理,這是因為挖掘出來的數據中含有很多無用的數據,這些數據不但消耗分析的時間,而且還會影響數據分析結果,所以我們需要對數據進行清洗。在這篇文章中我們重點給大家介紹一下數據清洗的相關知識。
那麼什麼是數據清洗呢?一般來說,數據清洗是指在數據集中發現不準確、不完整或不合理數據,並對這些數據進行修補或移除以提高數據質量的過程。而通常來說,數據清洗框架由5個步驟構成,第一就是定義錯誤類型,第二就是搜索並標識錯誤實例,第三就是改正錯誤,第四就是文檔記錄錯誤實例和錯誤類型,第五就是修改數據錄入程序以減少未來的錯誤。
我們按照數據清洗的步驟進行工作的時候還需要重視格式檢查、完整性檢查、合理性檢查和極限檢查,這些工作也在數據清洗過程中完成。數據清洗對保持數據的一致和更新起著重要的作用,因此被用於多個行業。而尤其是在電子商務領域,盡管大多數數據通過電子方式收集,但仍存在數據質量問題。影響數據質量的因素包括軟體錯誤、定製錯誤和系統配置錯誤等。通過檢測爬蟲和定期執行客戶和帳戶的重復數據刪,對電子商務數據進行清洗。所以說數據清洗倍受大家的關注。
而在RFID領域,有關文獻研究了對RFID數據的清洗。一般來說,RFID技術用於許多應用,如庫存檢查和目標跟蹤等。然而原始的RFID數據質量較低並包含許多由於物理設備的限制和不同類型環境雜訊導致的異常信息。這就是骯臟數據產生的影響,所以說數據清洗工作是多麼的重要。而這一文獻則實現了一個框架,這種框架用於對生物數據進行標准化。在該框架的輔助下,生物數據中的錯誤和副本可以消除,數據挖掘技術能夠更高效地運行。
所以說數據清洗對隨後的數據分析非常重要,因為它能提高數據分析的准確性。但是數據清洗依賴復雜的關系模型,會帶來額外的計算和延遲開銷,必須在數據清洗模型的復雜性和分析結果的准確性之間進行平衡。
在這篇文章中我們給大家介紹了很多關於數據清洗的相關知識,通過這篇文章我們不難發現數據清洗的重要性——數據清洗工作占據整個數據分析工作的七成時間。希望這篇文章能夠更好地幫助大家。
B. 數據分析中如何清洗數據
數據分析中數據集通常包含大量數據,這些數據可能以不易於使用的格式存儲。因此,數據分析師首先需要確保數據格式正確並符合規則集。
此外,合並來自不同來源的數據可能很棘手,數據分析師的另一項工作是確保所得到的信息合並有意義。
數據稀疏和格式不一致是最大的挑戰–這就是數據清理的全部內容。數據清理是一項任務,用於識別不正確,不完整,不準確或不相關的數據,修復問題,並確保將來會自動修復所有此類問題,數據分析師需要花費60%的時間去組織和清理數據!
數據分析中數據清理有哪些步驟?
以下是經驗豐富的開發團隊會採用的一些最常見的數據清理步驟和方法:
處理丟失的數據
標准化流程
驗證數據准確性
刪除重復數據
處理結構錯誤
擺脫不必要的觀察
擴展閱讀:
讓我們深入研究三種選定的方法:
處理丟失的數據——忽略數據集中的丟失值,是一個巨大的錯誤,因為大多數演算法根本不接受它們。一些公司通過其他觀察值推算缺失值或完全丟棄具有缺失值的觀察值來解決此問題。但是這些策略會導致信息丟失(請注意,「無價值」也會告訴我們一些信息。如果公司錯過了分類數據,則可以將其標記為「缺失」。缺失的數字數據應標記為0,以進行演算法估計)在這種情況下的最佳常數。
結構性錯誤——這些是在測量,傳輸數據期間出現的錯誤,以及由於數據管理不善而引起的其他問題。標點符號不一致,錯別字和標簽錯誤是這里最常見的問題。這樣的錯誤很好地說明了數據清理的重要性。
不需要的觀察——處理數據分析的公司經常在數據集中遇到不需要的觀察。這些可以是重復的觀察,也可以是與他們要解決的特定問題無關的觀察。檢查不相關的觀察結果是簡化工程功能流程的好策略-開發團隊將可以更輕松地建立模型。這就是為什麼數據清理如此重要的原因。
對於依賴數據維護其運營的企業而言,數據的質量至關重要。舉個例子,企業需要確保將正確的發票通過電子郵件發送給合適的客戶。為了充分利用客戶數據並提高品牌價值,企業需要關注數據質量。
避免代價高昂的錯誤:
數據清理是避免企業在忙於處理錯誤,更正錯誤的數據或進行故障排除時增加的成本的最佳解決方案。
促進客戶獲取:
保持資料庫狀態良好的企業可以使用准確和更新的數據來開發潛在客戶列表。結果,他們提高了客戶獲取效率並降低了成本。
跨不同渠道理解數據:
數據分析師們在進行數據清理的過程中清除了無縫管理多渠道客戶數據的方式,使企業能夠找到成功開展營銷活動的機會,並找到達到目標受眾的新方法。
改善決策過程:
像干凈的數據一樣,無助於促進決策過程。准確和更新的數據支持分析和商業智能,從而為企業提供了更好的決策和執行資源。
提高員工生產力:
干凈且維護良好的資料庫可確保員工的高生產率,他們可以從客戶獲取到資源規劃的廣泛領域中利用這些信息。積極提高數據一致性和准確性的企業還可以提高響應速度並增加收入。
C. 如何進行數據清洗
數據清理是有一些步驟的,一般分為缺失值清洗,格式內容清洗,邏輯錯誤清洗,非需求數據清洗,關聯性驗證。
缺失值是最常見的數據問題,處理缺失值也有很多方法,我建議按照以下四個步驟進行:1、確定缺失值范圍:對每個欄位都計算其缺失值比例,然後按照缺失比例和欄位重要性,分別制定策略。
2、去除不需要的欄位:這一步很簡單,直接刪掉即可,但強烈建議清洗每做一步都備份一下,或者在小規模數據上試驗成功再處理全量數據。
3、填充缺失內容:某些缺失值可以進行填充。
4、重新取數:如果某些指標非常重要又缺失率高,那就需要和取數人員或業務人員了解,是否有其他渠道可以取到相關數據。
第二步:格式內容清洗
如果數據是由系統日誌而來,那麼通常在格式和內容方面,會與元數據的描述一致。而如果數據是由人工收集或用戶填寫而來,則有很大可能性在格式和內容上存在一些問題。
第三步:邏輯錯誤清洗
這部分的工作是去掉一些使用簡單邏輯推理就可以直接發現問題的數據,防止分析結果走偏。
第四步:非需求數據清洗
這一步說起來非常簡單:把不要的欄位刪了。
但實際操作起來,有很多問題。
第五步:關聯性驗證
如果你的數據有多個來源,那麼有必要進行關聯性驗證。例如,你有汽車的線下購買信息,也有電話客服問卷信息,兩者通過姓名和手機號關聯,要看一下同一個人線下登記的車輛信息和線上問卷問出來的車輛信息是不是同一輛,如果不是,那麼需要調整或去除數據。
D. 數據清洗經驗分享:什麼是數據清洗 如何做好
如何去整理分析數據,其中一個很重要的工作就是數據清洗。數據清洗是指對「臟」數據進行對應方式的處理,臟在這里意味著數據的質量不夠好,會掩蓋數據的價值,更會對其後的數據分析帶來不同程度的影響。有調查稱,一個相關項目的進展,80%的時間都可能會花費在這個工作上面。因為清洗必然意味著要對數據有一定的理解,而這個工作是自動化或者說計算機所解決不了的難題,只能靠人腦對數據進行重新審查和校驗,找到問題所在,並通過一些方法去對對應的數據源進行重新整理。
清洗數據的方式大概可以分為以下幾類,篩選、清除、補充、糾正,例如:
去除不需要的欄位:簡單,直接刪除即可。但要記得備份。
填充缺失內容:以業務知識或經驗推測填充缺失值;以同一指標的計算結果(均值、中位數、眾數等)填充缺失值;以不同指標的計算結果填充缺失值。
格式不一致:時間、日期、數值、全半形等顯示格式不一致,這種問題通常與輸入端有關,在整合多來源數據時也有可能遇到,將其處理成一致的某種格式即可。例如一列當中儲存的是時間戳,某些跨國公司的不同部門在時間的格式上有可能存在差別,比如2019-01-12,2019/01/12等,這時候需要將其轉換成統一格式。
內容中有不需要的字元:某些情況使得有些數據中包含不需要的字元。例如從網路爬到的數據會包含一些編碼解碼的字元如%22,這種情況下,需要以半自動校驗半人工方式來找出可能存在的問題,並去除不需要的字元。
數據提取:例如咱們只有用戶身份證的信息,但是需要用戶生日一列,這時候我們可以直接從身份證號中按照一定規律將生日信息提取出來。
E. 數據清洗一般遵循以下哪些原則
關於數據清理(尤其是醫學數據清理),每個資料庫的具體問題都不一樣,但是根據經驗,都會涉及以下5個方面,清理時務必要考慮!
第1點:重復記錄是優先要考慮的,很多人沒有去重做歲的概念和意識,拿到數據直接分析,或者僅進行極端值的清理,往往到結果出來了才發現需要重頭來過。實際上出現重復的情形太多太多了,錄入時id號不小心錄錯一位;一個人的左眼和右眼數據分成2行存儲,等等等等,非常常見!
常見的坑:不同的資料庫,盡量不要只用一個欄位進行比對,像下面這種情況
id號為k0097和id號為k0265是我們一項真實大型眼病流調中的案例,很多人喜歡只用id號作為唯一性的識別。好了,對於我們這個研究,k0097和k0265id號完全不同,但是姓名、性別甚至是出生日期都完全一樣;對於楊風雲這個個體,甚至連身高都基本一致,嚴重提示重復!
經過核查,是同一個人,至於為什麼同一個人會在現場出現兩次,具體原因已然不得而知,但是要警惕這種現象!
第2點:缺失值是任何場景都會遇到梁薯的,無論是電商數據還是醫學研究中採集的患者數據,都有無法測量的時候,醫學數據更為特殊,因為患者有拒絕參與的情況。但是缺失歸缺失,一定要引起重視,能做插補要考慮插補,不能插補的要做好備注或其它處理,否則結果(尤其是當有分組變數,且分組變數有缺失的情況下)往往互相矛盾。
常見的坑1:很多人喜歡用99,999,9999等來替換標記缺失值,這種做法在很多情況下,尤其是醫學數據中要格外小心。因為真的有的指標是可以取到這些值的,比如體重,到達99公斤不少見;比如白細胞,9999也是正常范圍。還有很多人喜歡用0代表缺失值,說實話,就更坑了。因為用0來賦值的情形太多了,況且有的指標也是可以取到0的,比如C反應蛋白。
標記缺失值一定要考慮指標本身的正常值范圍!
常見的坑2:不是所有缺失值都能插補的!
100個數,缺2個,你插完基本接近真值;缺50個你還插,那不叫填補,那叫瞎蒙!
建議在列缺失20%比例以內的進行插補,太高的比例比如30%以上應該考慮舍棄該指標該變數!
大家在拿到一批數據時,不妨做一個下圖這樣的基本頻數分布,幫助你判斷數據質量橡胡者。
第3點:極端值會嚴重影響數據分布,譬如你研究北京地區成年人血液中鉛含量的正常水平,抽了1000人。其中999人都在80-110微克/升,按說平均血鉛水平應該在90多;很不幸你抽到了一個鉛中毒患者,他的血鉛水平是常人的百倍,達到10000微克/升,你如果不對此人做
F. 數據分析中如何清洗數據
在數據分析中我們重點研究的是數據,但是不是每個數據都是我們需要分析的,這就需要我們去清洗數據,通過清洗數據,這樣我們就能夠保證數據分析出一個很好的結果,所以說一個干凈的數據能夠提高數據分析的效率,因此,數據清洗是一個很重要的工作,通過數據的清洗,就能夠統一數據的格式,這樣才能夠減少數據分析中存在的眾多問題,從而提高數據的分析的效率。但是清洗數據需要清洗什麼數據呢?一般來說,清洗數據的對象就是缺失值、重復值、異常值等。
首先給大家說明一下什麼是重復值,所謂重復值,顧名思義,就是重復的數據,數據中存在相同的數據就是重復數據,重復數據一般有兩種情況,第一種就是數據值完全相同的多條數據記錄。另一種就是數據主體相同但匹配到的唯一屬性值不同。這兩種情況復合其中的一種就是重復數據。那麼怎麼去除重復數據呢?一般來說,重復數據的處理方式只有去重和去除兩種方式,去重就是第一種情況的解決方法,去除就是第二種情況的解決方法。
其次給大家說一下什麼是異常值,這里說的異常值就是指一組測試值中宇平均數的偏差超過了兩倍標准差的測定值。而與平均值的偏差超過三倍標准差的測定值則被稱為高度異常值。對於異常值來說,我們一般不作處理,當然,這前提條件就是演算法對異常值不夠敏感。如果演算法對異常值敏感了怎麼處理異常值呢?那麼我們就需要用平均值進行替代,或者視為異常值去處理,這樣可以降低數據異常值的出現。
而缺失值也是數據分析需要清理的對象,所謂缺失值就是數據中由於缺少信息導致數據的分組、缺失被稱為缺失值,存在缺失值的數據中由於某個或者某些數據不是完整的,對數據分析有一定的影響。所以,我們需要對缺失值進行清理,那麼缺失值怎麼清理呢?對於樣本較大的缺失值,我們可以直接刪除,如果樣本較小,我們不能夠直接刪除,因為小的樣本可能會影響到最終的分析結果。對於小的樣本,我們只能通過估算進行清理。
關於數據分析需要清楚的數據就是這篇文章中介紹的重復值、異常值以及缺失值,這些無用的數據大家在清理數據的時候一定要注意,只有這樣才能夠做好數據分析。最後提醒大家的是,大家在清理數據之前一定要保存好自己的原始數據,這樣我們才能夠做好數據的備份。切記切記。
G. 數據清洗的主要類型
對爛扮知於這一類數據——特別是維表中會出現這種情況——將重復數據記錄的所有欄位導出來,讓客戶確認並飢消整理。
數據清洗是一個反復的過程,不可能在幾天內完成,只有不斷的發現問題,解決問題。對於是否過濾,是否修正一般要求客缺漏戶確認,對於過濾掉的數據,寫入Excel文件或者將過濾數據寫入數據表,在ETL開發的初期可以每天向業務單位發送過濾數據的郵件,促使他們盡快地修正錯誤,同時也可以做為將來驗證數據的依據。數據清洗需要注意的是不要將有用的數據過濾掉,對於每個過濾規則認真進行驗證,並要用戶確認。
H. 如何清洗臟數據
1、准備工作
拿到數據表之後,先做這些准備工作,方便之後的數據清洗。
(1)給每一個sheet頁命名,方便尋找
(2)給每一個工作表加一列行號,方便後面改為原順序
(3)檢驗每一列的格式,做到每一列格式統一
(4)做數據源備份,防止處理錯誤需要參考原數據
(5)刪除不必要的空行、空列
2、統一數值口徑
這是個無聊而必要的步驟。例如我們統計銷售任務指標,有時用合同金額有時用回款金額,口徑經常不統一。統計起來就很麻煩。所以將不規范的數值改為規范這一步不可或缺。
3、刪掉多餘的空格
原始數據中如果夾雜著大量的空格,可能會在我們篩選數據或統計時帶來一定麻煩。如何去掉多餘的空格,僅在字元間保留一個空格?
(1)手動刪除。如果只有三五個空格,這可能是最快的方式。
(2)函數法
在做數據清洗時,經常需要去除數據兩端的空格,那麼TRIM、LTRIM、RTRIM這3個函數就可以幫到你啦~
TRIM函數:主要是用來去除單元格內容前後的空格,但不會去除字元之間的空格。表達式:=TRIM(文本)
ps:LTRIM、RTRIM與TRIM函數的使用方法一樣~
LTRIM函數:用來去除單元格內容左邊的空格;RTRIM函數:用來去除單元格內容右邊的空格。
4、欄位去重
強烈建議把去重放在去除空格之後,因為多個空格導致工具認為「顧納」和「顧 納」不是一個人,去重失敗。
按照「數據」-「刪除重復項」-選擇重復列步驟執行即可。(單選一列表示此列數據重復即刪除,多選表示多個欄位都重復才刪除。)
數據清洗從名字上也看的出就是把「臟」的「洗掉」,指發現並糾正數據文件中可識別的錯誤的最後一道程序,包括檢查數據一致性,處理無效值和缺失值等。
因為數據倉庫中的數據是面向某一主題的數據的集合,這些數據從多個業務系統中抽取而來而且包含歷史數據,這樣就避免不了有的數據是錯誤數據、有的數據相互之間有沖突,這些錯誤的或有沖突的數據顯然是我們不想要的,稱為「臟數據」。