㈠ 做數據分析如何保障數據的准確性
從業多年,在數據准確性上摔過不少跟斗,總結了一些切實有效的方法,能夠幫你盡可能的規避錯誤,確保數據的准確性,分享給大家
對數據上游的管理雖然看上去,數據分析師是掌握數據資源的人,但從數據的生產流程來看,數據分析師其實位於數據的下游,數據需要至少先經過採集環節、清洗環節、存儲環節才能被數據分析師拿到,甚至有的體量特別大的數據,他的調取和處理環節也不能被數據分析師控制。所以,想要最終做出的數據不出錯,那就要先確保我們的數據上游是准確的。
雖然數據上游一般是由其他業務或技術人員負責,但數據分析師也可以通過提需求或生產過程參與的方式,對數據上游進行管理:
設立數據「安檢站」「大包小包過機安檢」只要你坐過北京的地鐵,相信這句話一定耳熟能詳,為了確保所有旅客不把易燃易爆等危險品帶入地鐵內危及他人安全,地鐵在每個進站口設置安檢站對所有過往人員物品進行檢查。雖然避免數據錯誤的最主要方法就是檢查,但全流程無休止的數據檢查顯然是費時費力且效率低的,我們其實也可以在數據流入流出的關鍵節點設立「安檢站」,只在這個時候進行數據檢查。
一般我會在這些地方設立「安檢站」:
幾種行之有效的檢查方法:
確保數據准確的幾個日常習慣除了上述成體系的錯誤規避手段外,幾個日常的好習慣也可以讓我們盡可能的離錯誤遠一點:
以上,是確保數據准確的大致經驗總結,幾句最關鍵的話再重復嘮叨一下:
數據處理的准確性校驗一直是個難題,是否存在一些針對據處理准確性的通用做法呢?
下面是一些對於數據進行計算處理後,保證數據准確性的個人實踐:
對於大部分數據來說,數據處理可以分為以下 五個步驟 :
1.數據採集;2.數據傳輸(實時/批量);3.數據建模/存儲;4.數據計算/分析;5.數據可視化展示/挖掘
針對上面五點分別展開介紹:
一、數據採集
通常數據處理之前會有數據採集的過程,數據採集會涉及到多數據來源,每中數據來源由於格式等不一致,需要特殊處理。
1.針對不通的數據源,需要做到每個數據源獲取 數據能夠獨立。
2.採集過程需要監控,傳輸之前如有條件,可以做到本地有備份數據,便於異常查找時進行數據比對。
二、數據傳輸(實時/批量)
數據源本地已經做到有備份的情況下,對於傳輸異常的時候,需要 支持重試 ,存儲端需要支持去重。
三、數據建模/存儲
數據存儲可以針對結果集合進行冗餘分類存儲,便於數據進行比對,針對存儲需要進行副本備份,同時數據可以考慮按生效記錄進行疊加存儲,支持回溯 歷史 的存儲結構進行存儲。
四、數據計算/分析/挖掘
數據進行計算,分析的時候需要進行步驟分解,便於准確性的分析和統計
1.計算之前,支持測算,同時支持數據進行分批計算,需要能導出本批次清單基礎數據(例如人員或者id),便於數據核對。
2.計算之中,支持快速少量指定的典型數據測算,支持選擇,是否存儲參與計算過程的全部的中間變數。
3.計算之後,可以選擇,支持導出本次計算過程中的所有參與變數和中間變數參數,可以線下根據數據列表對應的參數,進行計算,從而進行數據准確性的核對。
計算過程中,支持針對有問題的數據ID進行染色,染色後的數據,所有的中間過程變數全部進行列印輸出。
五、數據可視化展示
可視化挖掘過程,需要主要前台圖形化界面的數據量