1. 데이터 EDA ( 탐색적 자료 분석 )
- 데이터의 분석에 앞서 전체적으로 데이터의 특징을 파악하고 데이터를 다양한 각도로 접근한다.
- summary() 를 이용하여 데이터의 기초통계량을 확인한다.
2. 결측값 인식
- 결측값은 NA , 9999999 , ' '(공백) , Unknown , Not Answer 등으로 표현되는 것으로 결측값을 처리하기 위해서 시간을 많이 사용하는 것은 비효율적이다.
- 결측값 자체의 의미가 있는 경우도 있는데 예를 들면 쇼핑몰 가입자 중 특정 거래 자체가 존재하지 않는 경우와 인구통계학적데이터 ( demographic data ) 에서 아주 부자이거나 아주 가난한 경우 자신의 정보를 잘 채워 넣지 않기 때문에 가입자의 특성을 유추하여 활용할 수 있다.
- 결측값 처리는 전체 작업속도에 많은 영향을 준다.
3. 결측값 처리 방법
가. 단순 대치법 ( Single Imputation )
1) completes analysis
- 결측값이 존재하는 레코드를 삭제한다.
2) 평균대치법 ( Mean Imputation )
- 관측 또는 실험을 통해 얻어진 데이터의 평균으로 대치한다.
- 비조건부 평균 대치법 : 관측데이터의 평균으로 대치
- 조건부 평균 대치법 ( regression imputation ) : 회귀분석을 활용한 대치법
3) 단순확률 대치법 ( Single Stochastic Imputation )
- 평균대치법에서 추정량 표준 오차의 과소 추정문제를 보완하고자 고안된 방법으로 Hot-deck 방법 , nearest neighbor 방법 등이 있다.
나. 다중 대치법 ( Multiple Imputation )
- 단순대치법을 한번하지 않고 m번의 대치를 통해 m개의 가상적 완전 자료를 만드는 방법이다.
- 1단계 : 대치 ( imputation step ) , 2단계 : 분석 ( Analysis step ) , 3단계 : 결합 ( combination step )
- Amelia - time series cross sectional data set ( 여러 국가에서 매년 측정된 자료 ) 에서 bootstra - pping based algorithm 을 활용한 다중 대치법이다.
4. R에서 결측값 처리
가. 관련 함수
- complete.cases() : 데이터내 레코드에 결측값이 있으면 FALSE , 없으면 TRUE로 반환
- is.na() : 결측값을 NA로 인식하여 결측값이 있으면 TRUE , 없으면 FALSE로 반환
- DMwR 패키지의 centrallmputation() : NA 값에 가운데 값 (central value ) 으로 대치 , 숫자는 중위수 , 요인 ( factor ) 은 최빈값으로 대치
- DMwR 패키지의 Knnlmputation() : NA 값을 k최근 이웃 분류 알고리즘을 사용하여 대치하는 것으로 k개 주변 이웃까지의 거리를 고려하여 가중 평균한 값을 사용
- Amelia 패키지의 amelia() : time-series-cross-sectional data set ( 여러 국가에서 매년 측정된 자료 ) 에서 활용 --> 랜덤포레스트 ( random forest ) 모델은 결측값이 존재할 경우 , 바로 에러가 발생 , randomForest 패키지의 rflmpute() 함수를 활용하여 NA 결측값을 대치한 후 알고리즘에 적용
5. 이상값(Outlier) 인식과 처리
가. 이상값이란?
- 의도하지 않게 잘못 입력한 경우 ( Bad data )
- 의도하지 않게 입력되었으나 분석 목적에 부합되지 않아 제거해야 하는 경우 ( Bad data )
- 의도하지 않은 현상이지만 분석에 포함해야 하는 경우
- 의도된 이상값 ( fraud , 불량 ) 인 경우
- 이상값을 꼭 제거해야 하는 것은 아니기 때문에 분석의 목적이나 종류에 따라 적절한 판단이 필요하다.
나. 이상값의 인식 방법
1) ESD ( Extreme Studentized Deviation )
- 평균으로부터 3 표준편차 떨어진 값 ( 각 0.15 % )
2) 기하평균 - 2.5 x 표준편차 < data < 기하평균 + 2.5 x 표준편차
3)
사분위수 이용하여 제거하기 ( 상자 그림의 outer fence 밖에 있는 값 제거 )
이상값 정의 : Q1 - 1.5 ( Q3-Q1) < data < Q3 + 1.5(Q3-Q1)를 벗어나는 데이터
다. 극단값 절단 ( trimming ) 방법
1) 기하평균을 이용한 제거
- geo_mean
2) 하단 , 상단 % 이용한 이용한 제거
- 10% 절단 ( 상하위 5%에 해당되는 데이터 제거 )
라. 극단값 조정 ( winsorizing ) 방법
- 상한값과 하한값을 벗어나는 값들을 하한 , 상한값으로 바꾸어 활용하는 방법이다.
출제포인트
- 레코드를 삭제하면 데이터수가 줄어 활용할 수 있는 변수도 작아집니다. 즉 , 데이터활용의 효율성이 떨어진다는 것입니다. 이러한 단점을 보완하기 위해 평균대치법 , 단순확률 대치법을 이용합니다.
- R프로그램에서 결측값의 확인 및 처리방식을 기억합니다.
- bad data로 판명된 데이터는 삭제하는 것이 바람직합니다.
- ESD는 단답형으로 자주 출제되는 문제이므로 숙지하시고 넘어가기.
- 극단값 절단 방법을 활용해 데이터를 제거하는 것 보단 극단값 조정 방법을 이용하는 것이 데이터 손실율도 적고 , 설명력도 높아집니다.
'자격증 > ADSP' 카테고리의 다른 글
데이터 분석 준전문가(adsp) - 기초 통계분석 (0) | 2020.02.07 |
---|---|
데이터 분석 준전문가(adsp) - 통계분석의 이해 (0) | 2020.02.01 |
데이터 분석 준전문가(adsp) - 데이터 가공 (0) | 2020.01.31 |
데이터 분석 준전문가(adsp) - 데이터 마트 (0) | 2020.01.30 |
데이터 분석 준전문가(adsp) - 데이터 변형 (0) | 2020.01.30 |
#IT #먹방 #전자기기 #일상
#개발 #일상