초심자를 위한 데이터 시각화 (EDA) 가이드라인

Bonnie BK
BON DATA
Published in
6 min readMar 8, 2021

(1) 개념 & 실전 TOOL

본 포스팅은 데이터 시각화 초심자를 위해, 필자의 다방면 구글링을 통해 쌓은 지식 & 실제 커뮤니케이션 경험으로 다져 단순화시킨 데이터 시각화 가이드라인을 담고 있습니다. 데이터 시각화는 정답이 없는 만큼 다양한 리소스 속에서 헤매기 쉽습니다. 정보의 홍수 속에 헤매시는 초심자분들께 본 가이드라인을 추천드립니다.

목차

  1. 데이터 시각화란?
  2. EDA란?
  3. 실전에선 어떤 툴을 쓰는가?
  4. 데이터 시각화 (EDA) 가이드라인 with Python
이번 포스팅은 목차의 1, 2, 3을 다루는 오프닝입니다. 핵심은 목차의 4에서 다뤄집니다. 목차 4에서는 Jupyter Notebook에 예제 기반으로 작성된 가이드라인을 설명할 예정입니다. 각 상황별로 어떤 시각화 방식을 택하는 게 좋고 파이썬 코드는 어떻게 작성하면 되는지에 대한 매뉴얼입니다!

1. 데이터 시각화란?

회사에서 데이터를 다루는 사람들은 본인이 가지고 있는 데이터에 대한 스토리를, 보는 사람이 큰 노력을 들이지 않고도 이해할 수 있도록 스토리를 간결화하여 나타내는 능력이 중요합니다.

출처: https://infogram.com/page/data-visualization

데이터 사이언티스트들 대부분이 데이터 분석 자체에 필요한 새 지식과 신기술을 익히기에 바쁩니다. 그러나 그 신기술의 가치는 데이터 분석을 통해 나온 인사이트를 공유할 수 있을 때 발생합니다. 즉, 분석한 내용을 보여줄 도구와 방법 또한 데이터 사이언티스트로서 깊게 고민해야 하는 부분입니다.

개념

  • 광범위하게 분산된 방대한 양의 자료를 분석해, 한 눈에 보고 이해할 수 있도록 도표나 차트 등으로 정리하는 것을 의미합니다.

목적

  • 설득과 사실 확인을 목적으로 합니다.

보는 대상이 누구인가에 따라 달라지는 방식

  • 직접 그래프를 더 탐색해보고 싶은 목적이 있는 대상에게는 동적인(interactive) 시각화 방식이 좋습니다.
  • 더 탐색할 목적이 없고, 보고 싶은 정보가 명확한 대상에게는 정적인 그래프를 기반으로 작성한 후, 추가적인 내용이 궁금하면 대시보드로 가도록 유도하는 것이 좋습니다.

일반적인 시각화 방식

구글링을 하면 찾을 수 있는 일반적으로 알려진 정보 시각화 방법 표입니다. 사실 데이터 시각화 초심자로서는 표 안의 많은 단어가 낯설고, 시각화해야 할 데이터가 어느 범주에 해당하는지 조차 헷갈립니다. 그런 분들을 위해 다음 포스팅에 Jupyter notebook 기반으로 예제를 풀며 쉽게 실행하며 따라 할 수 있는 가이드라인을 업로드할 예정입니다. 기대해주세요!

2. EDA(Exploratory Data Analysis)란?

개념

  • 말 그대로는 탐색적 데이터 분석으로 해석됩니다.
  • 기본 도구는 도표(plot), 그래프(graph), 요약 통계(summary statistics)등을 사용합니다.
  • 모든 변수의 분포를 도표화하고, 시계열 데이터를 도표화하며, 변수를 변환하고, 산점도 행렬을 이용하여 변수들의 대응 관계를 파악하며, 모든 변수의 요약 통계를 생성하는 등의 방식을 취합니다.
  • 데이터를 체계적으로 둘러보는 하나의 방법입니다.

목적

  • 변수 간 트렌드, 패턴, 관계 등을 찾고자 합니다.
  • 데이터 분석 프로젝트 초기에 가설을 수립하기 위해 사용됩니다.
  • 데이터 분석 프로젝트 초기에, 적절한 모델 및 기법의 선정을 지원합니다.

EDA와 데이터 시각화의 차이

용어 정리

  • EDA = process of gaining relevant knowledge about a complex system
  • Data visualization = process of telling what you learned and what you want to communicate

단계

출처: https://www.mdpi.com/2220-9964/6/11/368/html
  • EDA(Exploratory Data Analysis)는 연구의 초기 혹은 데이터 정제(Clean Data) 이후 단계에서 이루어집니다. EDA 단계에서 얻은 이해는 알고리즘의 발전을 지원하고, 성능을 향상 시키는 데에 사용할 수 있습니다.
  • 반면 데이터 시각화(Data Visualization)는 분석 결과를 커뮤니케이션 하기 위해 연구의 마지막이자 의사결정 전 단계(Decision making)에서 주로 행해지는 방법론을 칭합니다.

EDA의 구성 요소

두 방법론의 차이에 대한 이해를 돕기 위해 두 방법론의 관계에 대해 더 자세히 알아보겠습니다. Velleman and Hoaglin (1981)이 탐색적 데이터 분석의 네 가지 기본 구성 요소를 다음과 같이 규정하였습니다. (출처: https://www.creative-wisdom.com/teaching/WBI/EDA.shtml)

  • Data visualization
  • Residual analysis
  • Data transformation or re-expression
  • Resistance procedures

이 구성 요소를 통해 살펴 보면, EDA는 데이터를 시각화하는 것 외로도 숫자를 다루는 요소도 포함되어 있습니다. 이 규정을 참고하여 데이터 시각화와 탐색적 데이터 분석의 차이를 정의해보자면,

“데이터 시각화(Data visualization)는 주로, 연구 후 분석 결과를 Communicate 하는 목적의 데이터 시각화를 칭하는 용어로 사용되는 경향이 있으나, 탐색적 데이터 분석(EDA)에서도 데이터 시각화를 주 방법론으로 사용한다”

위와 같이 정의할 수 있겠습니다. 본 포스팅에서는 커뮤니케이션을 위한 데이터 시각화보다는, EDA 과정 내에서의 데이터 시각화에 대한 가이드라인을 다룹니다.

3. 실전에서는 어떤 툴을 쓰는가?

데이터 시각화 가이드라인으로 들어가기 전에, 실전에서는 어떤 툴을 쓰는지 짧게 소개하고자 합니다. 회사마다 다르겠으나, 필자가 일하던 곳에서는 Tableau, Google spreadsheet, Python을 가장 많이 사용하였습니다. 용도별로 실전 툴을 구분해 보았습니다.

빠른 커뮤니케이션이 중요할 때 (일회성으로 자료 뽑아 보여주고 재활용하지 않을 때)

  • Excel
  • Google Spreadsheet
  • Python

대시보드로 생성할 때

  • Tableau
  • Google Spreadsheet
  • Zepplin

심화된 데이터 전처리 혹은 모델링과 함께 섞을 때

  • Python (Matplotlib, Seaborn, Folium, Pyecharts, Plotly, and etc.)
  • R
  • SQL
  • Interactive EDA(Ipywidget, Colabotory의 경우 Widget)

마치며

데이터 시각화는 정답이 없는 것 같습니다. 툴도 춘추전국시대처럼 난무합니다. 그중에서 본인의 경험을 통해 가장 전달이 잘 되는 툴과 시각화 방식을 추려 나가는 게 가장 정답에 가까울 것 같습니다. 다음 포스팅에서는 하루 일자의 뉴욕의 바이크 대여 기록 데이터를 기반으로, 탐색적 데이터 분석을 실습하는 가이드라인이 이어집니다.

👉🏻 다음 포스팅 보러 가기

--

--

Bonnie BK
BON DATA

옆 동네 데이터 분석가, 데이터로 유저의 행동을 이해하고 인과관계를 파악합니다. Contact me through 🔗 https://www.linkedin.com/in/b-choi/ 🗂 https://www.slideshare.net/choibokyung/presentations