1. 程式人生 > >Python基本的數據清洗

Python基本的數據清洗

缺失 結果導向 機構 python excel表 篩選 strong 可能 清洗

  接觸Python兩年多了,還從來沒有獨立用Python完成一個項目,說來慚愧。最近因為工作需要,用Excel和oracle整理數據貌似不可行了,於是轉向Python,理所當然的踩了很多坑,一一記錄下來,避免以後再次入坑,畢竟不常用,好了傷疤就會忘了疼···

業務場景:

  領導拿來幾個Excel,共150W條保險數據,需要按照特定規則篩選出滿足條件的數據。

  字段:業務機構、保單號、案件號、被保險人、代碼1、標的車號、VIN碼、駕駛員、電話、出險時間、出險經過、維修企業、定損金額、三者車號、三者VIN、三者駕駛員、代碼2、三者維修企業、查勘定損人員;

  150W條數據沒有唯一標識字段:同一個案件號對應一個標的車號、0-多個三者車號,一個標的車號對應一個或多個保單號,所以需要通過標的車號、保單號、報案號三個字段唯一確定一條理賠記錄。

  篩選規則:

  電話頻率大於等於3次(1年內);車架號(標的及三者大於等於3次(1年內;駕駛員姓名(標的及三者)大於等於3次(1年內),標的與三者維修單位為同一修配廠的;同一車號或是車架號在10日內出險兩次的;出險時間在21:00~6:00的案件,做風險標識。

  給到的數據,有以下幾個問題:

  1. 部分記錄數據不完整,整體缺失率較低
  2. 部分字段信息錄入錯誤,比如,電話字段中出現字符、時間字段中出現11位數字(疑似電話信息)
  3. 有重復數據
  4. Excel數據表列名不一致

問題總結:

  這就是一個簡單的數據篩選工作!

  但是剛好工作不忙,剛好也想拿數據練練手,於是就開始操練起來了~

   動手之前,要通過各種途徑對數據進行全方位的了解,否則,浪費時間!

通過向數據來源方詢問變量之間的關系、通過常識判斷各變量的取值特性、通過探索性分析了解各變量的缺失/取值情況、結果導向分析數據清洗過程中可能會遇到的問題。

問題分解:

  1. 數據存儲在多個Excel表格中,將這些數據讀到一個變量中
  2. 按篩選條件整理數據
  3. 輸出篩選數據

代碼部分,我要放到另一篇文章裏面~

Python基本的數據清洗