ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • EDA(Exploratory Data Analysis)란
    공부/데이터 2022. 7. 2. 23:05

    EDA(Exploratory Data Analysis, 탐색적 데이터 분석)는데이터 분석 과정에 대한 개념으로 데이터를 분석하고 결과를 내는 과정에 있어서 지속적으로 해당 데이터에 대한 탐색과 이해를 기본으로 가져야 한다는 것을 의미합니다.

    EDA를 해야 하는 이유

    데이터의 분포 및 값을 검토함으로써 데이터가 표현하는 현상을 더 잘 이해하고 데이터에 대한 잠재적인 문제를 발견할 수 있습니다. 이를 통해, 본격적인 분석에 들어가기에 앞서 데이터의 수집을 결정할 수 있습니다. 또한 다양한 각도에서 살펴보는 과정을 통해 문제 정의 단계에서 미쳐 발생하지 못했을 다양한 패턴을 발견하고 이를 바탕으로 기존의 가설을 수정하거나 새로운 가설을 세울 수 있습니다.

    EDA 과정

    분석의 목적과 여기에 필요한 데이터 및 raw data의 설명을 체크

    분석을 하려는 목적에 맞는 데이터가 있는지 확인하고 주어진 데이터 내의 변수 또는 컬럼의 이름과 설명이 있는지 확인해야 합니다.

    결측치 처리 및 데이터 필터링

    결측치(missing value)란 값이 없는 데이터로 null, nan 등이 될 수 있습니다. 이러한 데이터가 있다면 제거를 해주고 분석에 필요한 데이터의 타입이 integer인데 string이나 object 형태라면 사용할 수 없기 때문에 필터링으로 제거해야 합니다.

    데이터의 개별 속성값 관찰

    각 속성값을 그래프로 그려봤을 때, 예측한 범위와 분포를 벗어난 값이 있는 경우, 이유가 무엇인지 확인하고 제거할지 결정합니다.

    이상값을 찾는 방법

    데이터에 이상치가 있으면 이상치가 왜 발생했는지 의미를 파악하는 것이 중요합니다. 의미를 파악했으면 어떻게 대처해야 할지(제거, 대체, 유지 등)를 판단해야 합니다. 이상치를 발견하는 기법은 여러 가지가 있고 대표적으로 아래와 같은 방법들이 있습니다.

    개별 데이터 관찰

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

    통계 값 활용

    적절한 요약 통계 지표(summary statistics)를 사용할 수 있습니다. 데이터의 중심을 알기 위해서는 평균(mean), 중앙값(median), 최빈값(mode)을 사용할 수 있고 데이터의 분산을 알기 위해 범위(range), 분산(variance)을 사용할 수 있습니다. 통계 지표를 이용할 때는 데이터의 특성에 주의해야 합니다. 예를 들어, 평균에는 집합 내 모든 데이터 값이 반영되기 때문에 이상치가 있으면 값이 영향을 받지만 중앙값에는 가운데 위치한 값 하나가 사용되기 때문에 이상치의 존재에도 대표성이 있는 결과를 얻을 수 있습니다.

    예를 들어 회사 직원들의 연봉에 대해서 평균을 구하면 대체적으로 중간값보다 훨씬 높게 나오는데 몇몇 고액 연봉자가 평균을 끌어올렸기 때문입니다.

    시각화 활용

    시각적으로 표현이 되어있는 것을 보면 분석에 도움이 많이 됩니다. 시각화를 통해 주어진 데이터의 개별 속성에 어떤 통계 지표가 적절한지 결정할 수 있습니다. 시각화 방법에는 확률밀도 함수, 히스토그램, 점 플롯(dotplot), 워드 클라우드, 시계열 차트, 지도 등이 있습니다.

    알고리즘 활용

    대표적인 알고리즘으로 K-means를 통해 이상치를 확인 할 수 있습니다.

    이해하기 쉬운 시각화

    데이터를 기반으로 그래프를 그릴 때, 해당 그래프를 통해 어떤 의미를 얻어야 하는지 염두하면서 그려야 합니다.

    EDA가 쉽지 않은 이유

    누구에게나 인지편향(cognitive bias)가 있기 때문입니다. 분석을 하는 사람의 경험에 의한 비논리적 추론으로 잘못된 데이터를 필터링한다던지 속성값을 지운다던지 하는 이유로 잘못된 판단을 할 수 있습니다.

    우리는 무의식적으로 다른 사람들의 이야기를 비롯한 외부의 정보를 접할 때, 스스로의 경험으로 판단을 먼저 내리는 경향이 있습니다.

    이는 잘못된 것이라기 보다는 기존에 경험했던 것으로 먼저 판단을 내리게 하여 에너지를 효율적으로 관리하기 때문에 생기는 편향(bias)입니다.

    빠르게 변화하고 그 변화하는 정보들에 대해서 유연하게 대처하는 능력이 중요해지는 시대에는 인지적 편향을 조금 내려놓고 다른 사람들의 이야기와 정보(데이터)에 대해 있는 그대로 이해할 수 있는 능력이 필요합니다.

    레퍼런스

    https://jalynne-kim.medium.com/데이터분석-기초-eda의-개념과-데이터분석-잘-하는-법-a3cac2cc5ebc

    https://eda-ai-lab.tistory.com/13

    https://www.kaggle.com/code/subinium/kakr-eda/notebook

    댓글