2. 데이터 클리닝
1
• 반드시 필요하고 가장 시간을 많이 들이지만 가장 재미없어 하는 일
https://www.forbes.com/sites/gilpress/2016/03/23/data-preparation-most-time-consuming-least-enjoyable-data-science-task-survey-says/#66636cd26f63
3. • 데이터에서 이상치, 결측치 등 나쁜 데이터를 골라내는 과정 (cleansing, scrubbing, …)
• 나쁜 데이터: 목적에 부합하지 않는 모든 데이터 (bad data, dirty data, …)
• 왜 생기나? 좋은 데이터로 만드는 비용 > 좋은 데이터의 이득
데이터 클리닝
2
원시
데이터
수집
데이터
처리
데이터
클리닝
탐색적
데이터
분석
통계분석
기계학습
알고리즘
데이터
상품개발
커뮤니케이션
시각화
결과보고
<데이터 과학의 과정> Cathy O’Neil & Rachel Schutt (2013), Doing Data Science, O’REILLY.
4. 데이터 클리닝의 과정
2
데이터의 원본을 따로 보관한다.
• 데이터 클리닝 과정에서 원 데이터를 잃어버릴 수 있음
데이터 파일 포맷(JSON, XML, CSV, DTA, SAV 등)을 알고 있다.
• 사용하는 툴로 가져올 수 있는지 호환성을 확인
• 다른 프로그램으로 가져오는 경우 잃어버리거나 달라지는 데이터가
있는지 확인
데이터의 인코딩(encoding)을 알고 있다.
• 인코딩이 다르면 데이터의 내용을 파악할 수 없음
식별자(unique identifier)가 있다.
• 표본 단위 각각을 식별할 수 있는 고유한 식별자로,
중복을 막기 위해 필요
• 중앙대 학생의 학번, 대한민국 국민의 주민번호,
웹 서비스의 ID, 미디어패널의 pid/hid
변수의 이름이 직관적이다.
1. 데이터 불러오기
(Import)
2. 처리할 데이터 찾기
(Screen)
3. 나쁜 데이터의 원인 진단
(Diagnose)
4, 데이터 수정
(Treat)
5. 기록
(Document)
5. 데이터 클리닝의 과정
2
①클리닝(cleaning): 나쁜 데이터를 처리하고 질을 높이는 과정
• 중복된 데이터(duplicate)가 없다.
• 누락된 데이터(missing)가 없다.
• 데이터에 오타(typo)가 없다.
• 데이터에 오류(error)가 없다.
• 이상치(outlier), 불필요한 공백, 눈에 띄는 패턴이 없다.
• 데이터의 서식(format)이 일관적이다.
✓ LA 또는 Los Angeles
✓ SEONGKWON LEE 또는 Seongkwon Lee
✓ 2018-11-08 또는 08-Nov-2018
✓ 1,234.56 또는 1.234,56
1. 데이터 불러오기
(Import)
2. 처리할 데이터 찾기
(Screen)
3. 나쁜 데이터의 원인 진단
(Diagnose)
4, 데이터 수정
(Treat)
5. 기록
(Document)
ID 이름 생일 성별 연락처
1234 이성권 1998-03-04 남성 010-1234-9876
1235 김현지 1982-11-31 여성 010-5432-7890
1234 Seongkwon, Lee 1998-03-04 남성 010-1234-9876
1236 정수여ㅇ 1994-08-27 여성 010-
6. 데이터 클리닝의 과정
2
②변환(transformation): 데이터 분석을 쉽게 할 수 있게 구조를
바꾸는 작업
• Wide(세로형)-long(가로형)
• 데이터의 자료형(data type)이 일치한다.
(문자는 string, 숫자는 integer, float 등)
예: 1,234,500
• 하나의 변수에서 다른 파생변수를 만든다.
예: 주민등록번호 900101 - 1******
• 데이터 분석 모델에 맞게 변형한다.
✓ 이진형은 1과 0로 저장한다.
✓ 범주형은 대응하는 숫자로 바꾸어 저장한다.
✓ 정규화(normalization), 로그 변환 (log transformation) 등
1. 데이터 불러오기
(Import)
2. 처리할 데이터 찾기
(Screen)
3. 나쁜 데이터의 원인 진단
(Diagnose)
4, 데이터 수정
(Treat)
5. 기록
(Document)
7. 데이터 클리닝의 과정
2
3. 나쁜 데이터의 원인 진단 (Diagnose)
• 기술통계 등으로 데이터를 자세히 살펴보는 과정 필요
• 데이터 생성/관리 환경을 고려
4. 데이터 수정 (Treat)
• 누락된 데이터를 지우거나(delete) 채워 넣기(imputation)
• 중복된 데이터를 모두 지우거나 하나의 값만 유지
• 오타/오류의 수정
5. 기록 (Document)
• 처리가 필요한 데이터, 원인 진단, 수정 전후 내역 및 파일 버전을
모두 기록
1. 데이터 불러오기
(Import)
2. 처리할 데이터 찾기
(Screen)
3. 나쁜 데이터의 원인 진단
(Diagnose)
4, 데이터 수정
(Treat)
5. 기록
(Document)
정보 관점
(Information perspective)
사용자 관점
(User perspective)
컨텍스트와 관련이 없는 경우
(Context-independent)
데이터베이스 구성 및
관리 문제
사용자가 데이터를 가공하며
발생할 수 있는 문제
컨택스트와 관련이 있는 경우
(Context-dependent)
데이터를 생산하고 사용하는
환경에 맞지 않음
사용자의 목적에 맞지 않는
경우 발생할 수 있는 문제
9. 구성(composition): 백분율
3
• 100이라는 숫자를 기본으로 하여 2개의 수치 사이의 관계를 비교하는 단위
• ‘100’의 기준?
게르트 보스바흐, 옌스 위르겐 코르프 (2016), 통계의 거짓말, 강희진 역, 작은책방
10. 구성(composition): 백분율
3
• 100이라는 숫자를 기본으로 하여 2개의 수치 사이의 관계를 비교하는 단위
• ‘100’의 기준?
• %(퍼센트): 백분율
• %p(퍼센트포인트): 퍼센트의 변화량
http://www.kookje.co.kr/news2011/asp/newsbody.asp?code=0200&key=20200317.22013006542
https://korean.joins.com/news/article/article.asp?total_id=9666574&ctg=
11. • 각 구성요소가 전체에 어떻게 기여하는지 나타냄
• 파이 차트, 도넛 차트 (pie, donut chart)
✓각도와 원호의 길이로 비율을 나타냄
• 100% 누적 막대그래프(100% stacked bar plot)
✓100%를 기준으로 같은 막대 내에서의 길이 차이로 비율을 나타냄
구성(composition)
3
12. • 주의사항
✓파이/도넛 차트: 각도와 원호는 직관적으로 차이를 보기 어려우므로 비교할 때에는 피할 것
✓같은 이유로 3차원 그래프는 사용하지 말 것
구성(composition)
3
http://www.newsfreezone.co.kr/news/articleView.html?idxno=105157
https://www.perceptualedge.com/articles/visual_business_intelligence/save_the_pies_for_dessert.pdf