본문 바로가기
Computer Science/Data Science

[Data Processing] Data Cleaning

by Gofo 2022. 6. 12.

Data Cleaning

실세계의 데이터들을 dirty 하다.

  • incomplete
    • missing data 등 데이터가 불완전하다.
    • 원인 : 사람/컴퓨터의 실수, attribute에 관심이 떨어져서 정보를 유지하지 않음, 통계적인 정보만 존재하고 구체적인 개별 정보는 없는 경우
  • noisy : error, outliers, noise 데이터 등
  • inconsistent
    • 일관되지 않은 정보가 존재한다.
    • rating이나 단위의 차이, 분산되어 저장되는 동일 데이터 등
      • age = 42, birthday = 03/07/2010
      • rating = "1, 2, 3" vs "A, B, C"
  • intentional
    • missing data와 유사
    • 의도적으로 잘못된 데이터를 넣는 경우
    • 예 : 생년월일을 모를 경우 "1900.01.01"을 초기값으로 넣는 경우
  • duplicate : 중복된 데이터가 존재하는 경우

 


Incompete Data (Missing Data)

데이터는 항상 available하지는 않다.

 

원인

  • 장비의 실수
  • 사람의 실수
  • 데이터를 넣을 때 모르거나 잘못 이해해서 넣지 않은 경우
  • 당시에는 중요하지 않다고 생각하여 채우지 않은 경우

 

대책

이 경우 추론을 통해 데이터를 채워넣어야 한다.

  • ignore the tuple : missing이 있는 tuple(data)를 버린다.
  • missing value를 수동으로 채워 넣음 : 사람이 빈 데이터를 채워 넣는다.
  • 자동으로 채워 넣는다.
    • 해당되는 attribute에 대해 모두 같은 값으로 채워넣기
    • 평균을 이용해서 채워 넣기 → attribute의 모든 missing value가 같은 값을 갖는다.
    • 카테고리로 나누고 카테고리의 평균으로 채워넣는다. → 같은 카테고리에 속하는 데이터는 같은 값을 갖는다.
    • 다른 attribute들을 참고해서 data mining을 하여 missing value를 추론한다. → 가장 자주 사용되는 방법이다.

 


Noisy Data

데이터는 존재하지만 그 값이 잘못된 경우이다.

 

원인

  • faulty data collection instruments
  • data entry problem
  • data transmission problem : 통신 중 잘못된 경우
  • inconsistency : 단위가 다름으로 인해 값이 달라짐

 

대책

  • clustering
    • outlier를 찾아서 제거한다.
    • real value에서 잘못된 값이기 때문에 outlier로 튀어나올 수 있다.
  • combined computer-human inspection
    • 컴퓨터를 통해 의심되는 것을 찾고 사람이 검토하는 방법이다.
    • 사람이 전부 다 하는 것 보다는 노력을 줄일 수 있다.

 

 

'Computer Science > Data Science' 카테고리의 다른 글

[Data Processing] Data Reduction  (0) 2022.06.12
[Data Processing] Data Integration  (0) 2022.06.12
Data Processing & Data Quality  (0) 2022.06.12
Outlier Discovery  (0) 2022.06.12
[Density-based Clustering] OPTICS - Ordering Objects  (0) 2022.06.12

댓글