본문으로 건너뛰기

데이터 탐색

탐색적 데이터 분석(EDA)

탐색적 데이터 분석(EDA)

  • 데이터를 이해하고 의미 있는 관계를 찾아내기 위해 데이터의 통계값과 분포 등을 시각화하고 분석하는 것
  • EDA를 통해 데이터 특성을 이해하고 이를 토대로 분석 모델을 구축할 수 있다.

붓꽃(IRIS) 데이터를 이용한 탐색적 데이터 분석의 예

  • IRIS 데이터는 통계학자 피셔의 붓꽃 연구에 기반한 데이터로 R 실습에 자주 활용
  • 세 가지 붓꽃을 종(Species)에 따라 꽃받침 길이(Sepal Length), 꽃받침 폭(Sepal Width), 꽃잎 길이(Petal Length), 꽃잎 폭(Petal Width)을 기록한 데이터
  • IRIS 데이터는 R에 기본데이터로 내장되어 있으며, iris라는 데이터프레임을 불러올 수 있다.

데이터 구조(structure)를 파악하기 위한 str을 사용할 수 있고, 데이터 타입은 data.frame이며, 150개의 행과 5개의 열로 구성되어 있다. $ 뒤에 표시된 단어는 iris 데이터의 변수들을 의미하며 ‘num’ 또는 ‘Factor’은 각 변수의 type을 나타낸다.


결측값

결측값

  • 존재하지 않는 데이터를 의미, NA로 표현하지만 데이터를 수집하는 환경에 따라 null, 공백, -1 등 다양하게 표현 가능
  • 결측값 처리는 중요한 과제중 하나. 결측값을 삭제하는 것이 일반적이나 경우에 따라 의미를 갖는 경우도 있다.
  • 결측값 처리 패키지로 Amelia와 DMwR2가 이다.

결측값 대치 방법 ⭐️⭐️

단순 대치법

  • 결측값이 존재하는 데이터를 삭제하는 방법
  • 가장 쉽지만 결측값이 많은 경우 대량의 데이터 손실이 발생할 수 있음
  • 단순 대치법을 위한 함수로 complete.cases 가 있다.
  • complete.cases 는 하나의 열에 결측값이 존재하면 FALSE, 존재하지만 않으면 TRUE를 반환

평균 대치법

  • 얻은 데이터를 대표할 수 있는 평균 혹은 중앙값으로 결측값을 대치하여 불완전한 자료를 완전한 자료로 만드는 방법
  • 비조건부 평균 대치법과 조건부 평균 대치법이 있다.
    • 비조건부 평균 대치법 - 데이터의 평균값으로 결측값을 대치
    • 조건부 평균 대치법 - 실제 값들을 분석하여 회귀분석을 활용하여 대치
  • DMwR2 패키지의 central Imputation 사용

단순 확률 대치법

  • 평균 대치법에서 추정량 표준 오차의 과소 추정 문제를 보완하고자 고안된 방법
  • 대표적으로 K-Nearest Neighbor 방법이 있다.
  • K-Nearest Neighbor 방법 - K 최근접 이웃 알고리즘으로 주변 K개의 데이터 중 가장 많은 데이터로 대치하는 방법. K를 선정하기 쉽지 않다.

다중 대치법

  • 여러 번의 대치를 통해 n개의 임의 완전자료를 만드는 방법으로 결측값 대치, 분석, 결합의 세 단계로 구성

이상값

이상값

  • 값이 존재하지 않는 결측값과 달리 다른 데이터와 비교하였을 때 극단적으로 크거나 극간적으로 작은 값을 의미
  • 이상값은 데이터를 입력하는 과정에서 실수로 입력되거나 설문응답자의 악의적인 의도에 의해 입력될 수 있다.

이상값 판단 ⭐️⭐️

ESD(Extreme Studentized Deviation)

  • ESD는 평균으로부터 ‘표준편차 3’만큼 떨어진 값들을 이상값으로 인식하는 방법.
  • 정규분포에서 99.7%의 자료들은 ‘표준편차 3’안에 위치하므로 전체 데이터의 약 0.3퍼센트를 이상값으로 구분

사분위수

  • 사분위수를 이용하여 25%에 해당하는 값(Q1)과 75%에 해당하는 값(Q3)을 활용하여 이상치를 판단하는 방법
  • 자료를 크기 순서대로 나열했을 때 다음 그림과 같이 사분위수로 나눌 수 있다.
  • 가장 작은 하한 사분위수를 Q1이라고 하고, 가장 큰 사분위수를 Q3라고 한다.
  • 여기서 IQR이란 사분위의 정상 범위인 Q1과 Q3 사이를 의미하며, 사분 범위(Interquartile Range, IQR)라고 한다.
  • 일반적으로 사분범위에서 1.5분위수를 벗어나는 경우 이상치로 판단.
    • Q1 - 1.5 * IQR(하한 최솟값) 보다 작거나 Q3 + 1.5 * IQR(상한 최댓값) 보다 큰 값은 이상값으로 간주