IT/data_analysis

EDA (Exploratory Data Analysis)

Jeju_child 2020. 8. 3. 00:54

1. EDA란?

 

1) 정의

 

수집한 데이터가 들어왔을 때, 이를 다양한 각도에서 관찰하고 이해하는 과정, 한마디로 데이터를 분석하기 전에 그래프나 통계적인 방법으로 자료를 직관적으로 바라보는 과정이다. 

 

2) 필요한 이유

 

첫째, 데이터의 분포 및 값을 검토함으로써 데이터가 표현하는 현상을 더 잘이해하고, 데이터에 대한 잠재정인 문제를 발견할 수 있다. 이를 통해, 본격적인 분석에 들어가기 앞서 수집의사를 결정할 수 있다. 

 

둘째, 다양한 각도에서 살펴보는 과정을 통해 문제 정의 단계에서 미처 발생하지 못했을 다양한 패턴을 발견하고, 이를 바탕으로 기존의 가설을 수정하거나 새로운 가설을 세울 수 있다. 

 

3) 과정 

 

기본적인 출발점은 문제 정의 단계에서 세웠던 연구 질문과 가설을 바탕으로 분석 계획을 세우는 것이다. 분석 계획에는 어떤 속성 및 속성 간의 관계를 집중적으로 관찰해야할지, 이를 위한 최적의 방법은 무엇인지가 포함되어야 한다. 

 

(1) 분석의 복적과 변수가 무엇이 있는지 확인, 개별 변수의 이름이나 설명을 가지는지 확인

 

(2) 데이터를 전체적으로 살펴보기, 데이터에 문제가 없는지 확인, head나 tail 부분을 확인, 추가적으로 다양한 탐색, (이상치, 결측치, 등을 확인하는 과정)

 

(3) 데이터의 개별 속성값을 관찰, 각 속성값이 예측한 범위와 분포를 갖는지 확인, 만약 그렇지 않다면 이유가 무엇인지를 확인해 본다. 

 

(4) 속서 간의 관계에 초첨을 맞추어, 개별 속성 관찰에서 찾아내지 못했던 패턴을 발견한다. ( 상관관계, 시각화 )

 

2. 이상값을 찾아내는 방법

 

 이상치 부분에서 우리가 해야하는것은 먼저 이상치가 왜 발생했는지 의미를 파악하는 것이 중요하다. 그리고 그러한 의미를 파악했으면 어떻게 대처해야 할 지 (제거, 대체, 유지 등)를 판단해야 한다. 

 

 이상치를 발견하는 기법은 여러가지 있고 대표적으로 아래와 같은 방법들이 있다. 

 

1) 개별 데이터 관찰

 데이터 값을 눈으로 쭉 훑어 보면서 전체적인 추세와 특이사항을 관찰 할 수 있다. 데이터가 많다고 앞부분만 보면 안되고, 패턴이 뒤에서 나타날 수도 있으므로 뒤 or 무작위로 표본을 추출해서 관찰한다. 단, 이상값은 작은 크기의 표본에 나타나지 않을 수 있다. 

 

2) 통계값 활용

 적절한 요약 통계 지표( Summary Statistics)를 사용할 수 있다. 데이터의 중심을 알기 위해서는 평균(mean), 중앙값(median), 최빈값(mode)을 사용할 수 있다. 데이터의 분산도를 알기 위해서는 범위 (range) , 분산(Variance)을 사용할 수 있다. 통계 지표를 이용할 때는 데이터의 특성에 주의해야 한다. 예를 들어, 평균에는 집합 내 모든 데이터 값이 반영되기 때문에, 이상값이 있으면 값이 영향을 받지만, 중앙값에는 가운데 위치한 값 하나가 사용되기 때문에 이상값의 존재에도 대표성이 있는 결과를 얻을 수 있다. 회사 직원들의 연봉에 대해서 평균을 구하면, 대개 중간값보다 훨씬 높게 나오는데, 그것은 몇몇 고액연봉자가 평균을 끌어올렸기 때문이다. 

 

3) 시각화 활용

 일단은 시각적으로 표현이 되어있는 것을 보면, 분석에 도움이 많이 된다. 시각화를 통해 주어진 데이터의 개별 속성에 어떤 통계 지표가 적절한지 결정할 수 있다. 

 시각화 방법에는 확률밀도 함수, 히스토그램, 점플롯, 워드 클라우드, 시계열 차트 지도 등이 있다. 

 

4) 머신러닝 기법 활용

 대표적인 머신러닝 기법으로 K-means를 통해 이상치를 확인할 수 있다. 

 

 

3. 속성 간 관계 분석하기

 이 과정의 목표는 서로 의미 있는 상관 관계를 갖는 속성의 조합을 찾아내는 것이다. 여기서 부터 사실상 본격적인 탐색적 분석이 시작된다. 분석의 대상이 되는 속성의 종류에 따라, 방법도 달라져야 한다.

 

1) Categorical - Categorical 

 교차테이블, 모자이크 플롯을 이용해 각 속성값의 쌍에 해당하는 값 개수를 표시할 수 있다. 

 

2) Numeric - Categorical 

 각 카테고리별 통계값( 평균, 중간 값 등)을 관찰할 수 있다. 이를 박스폴롯을 통해 시각적으로 표현할 수 잇다. 

 

3) Numeric - Numeric

 상관계수를 통해 두 속성 간의 연관성을 나타낼 수 있다.  - 1은 두 속성이 반대 방향으로 변하는 음의 상관관계를 나타낸다. 

 

 0은 상관관계 없음을 나타낸다. 

 

 1은 두 속성이 항상 같은 방향으로 변하는 양의 상관관계를 나타낸다. 상관계수를 갖는 두 속성의 관계도 다양한 양상을 보일 수 있는데, 스캐터 플롯을 이용하여 이를 시각적으로 표현할 수 있다. 

 또, 분석을 하다보면, 2개 이상의 속성 간의 관계를 보고싶을 때가 있다. 그럴땐 3차원으로 표현하거나, 그래프 위에 표현된 점을 색상을 이용하거나 모양을 달리하여 더 많은 속성을 나타낼 수 있다.