본문 바로가기

회사생활/통계학 공부

분석 리포트 잘 쓰는 법? 데이터 시각화 잘하는 법?

 

내 첫 직장에서의 직군은 컨설팅이었다. 그 당시에 경험하고 배운 것 중에서 현재까지 나에게 가장 도움이 되는 부분은 빠르게 새로운 비즈니스 로직을 이해하는 것, 그리고 내가 한 업무를 상대방이 이해하기 편하게, 있어 보이게 표현하는 것이라고 생각한다. 그 중 오늘 이야기해볼 시각화에 대한 내용은 내가 한 업무를 상대방이 이해하기 편하게, 있어 보이게 표현하는 것과 이어져 있다.

 


(1) 리포트를 왜 잘 써야 하는가?

사람들은 똑같은 기능을 하는 전자제품이라도 디자인이 예쁜 제품을 산다. 옛 말에도 보기 좋은 떡이 먹기도 좋다, 같은 값이면 다홍치마라는 말도 있다. 하다못해 이 글을 읽는 사람들도 예쁘게 읽기 편하게 쓰인 블로그가 아니면 눈에 안 들어와서 뒤로가기를 누른다. 이 모든 게 다 같은 맥락이다. 

특히 데이터 분석이라는 작업은 분석 주제 선정부터 시작해서, 데이터 전처리라는 지옥을 거쳐, EDA 내지는 모델링을 해보고 그 결과에 따라 무한 반복을 계속하는 작업이다. 그렇지만 사람들은 내가 얼마나 힘들고 오래 이 작업을 어떤 과정으로 했는지는 그렇게 궁금해하지 않는다. 뭐... 같은 작업을 하는 사람들은 궁금할지도 모르지만, 슬프게도 내가 분석한 내용을 활용할 사람들은 대부분 관심이 없다.

가끔 이 모든 고생을 다 어필하고 싶어서 그 과정을 모두 리포트로 담는 사람들이 있는데, 이것도 잘못된 리포트 방식이다. (이 내용도 뒤에서 집어볼 예정이다.) 나는 내가 기껏 힘들게 일한 내용들을 스크롤 몇 번으로 스르륵 내려서 제대로 읽어보지도 않고 '어~ 수고했어.' 하는 말과 함께 지나치는 무의미한 장표로 만들고 싶지는 않다.

그래서 나는 리포트도 열심히 쓰고, 시각화도 열심히 한다. 물론 당연히 내용물도 중요하다. 근데 그건 기본이고... 내가 한 분석 결과를 읽어보고 싶게 만들고, 읽은 사람이 내가 의도한 대로 잘 이해하게 만들려면 좋은 시각화가 반드시 필요하다.

 


(2) 리포트를 작성할 때 기억해야 할 4가지

1. 내가 일한 순서대로 전부 나열하지 말기

가끔 본인이 작업한 순서대로 보고서를 쓰는 사람들이 있는데, 위에서 말했듯이 당신이 어떻게 작업했는지는 보고받는 사람은 크게 관심이 없다. 내가 이 보고서를 쓰는 목적이 무엇인지를 되짚어보고, 그 목적을 잘 달성하기 위한 전체적인 목차를 구성해야 한다. 

예를 들어 우리 회사에서 운영하고 있는 서비스 중 A라는 서비스의 트랜잭션 감소에 대한 보고서를 쓴다면, 리포트를 작성하는 목적은 <여기 이런 문제가 있어요!> 내지는 <이러이러한 것을 개선해야 합니다!>를 어필하기 위해서 일 것이다.

그렇다면 1) 먼저 트랜잭션 감소에 대한 현황을 집어주고, 2) 다른 서비스들도 감소하고 있는지, 아니면 A만 감소하는지 - 얼마나 심각한지 이야기하고, 3) 왜 감소하는지에 대한 디테일한 데이터와, 4) 그래서 어떻게 하면 좋을지에 대한 의견도 첨부하면 더 좋을 것 같다.

이렇게 블로그의 글을 쓴다는 심정으로 목차를 잡고 그 목차를 뒷받침하기 위해 어떤 내용의 그래프 또는 표가 들어가면 좋겠다고 전체적인 스토리 라인을 잡는 게 데이터 시각화의 첫 번째 스텝이다.

 

2. 꼭 있어야 하는 그래프 빼고 다 지우기

이건 정말 자주 일어나는 일인데, 왜 넣었는지 모르겠는 그래프의 나열로 보고서를 쓰는 분들이 많다. 이건 왜 넣었냐고 물어보면 '그냥 그렸으니까 넣었어요'라고 대답한다. (놀랍지만 정말 정말 많다... 심지어 면접용 사전과제에서도 그런 일이 생긴다.) 각각의 그래프가 왜 필요한지, 진짜로 필요한지 판단이 필요하다. 있으나 없으나 상관없는 그래프들은 모두 다 뺀다. 이것만 해도 정말 깔끔한 보고서가 된다.

 

3. 한눈에 들어오게 시각화하기

여기서부터는 약간 취향이 반영되기 시작하는데, 나 같은 경우에는 ggplot의 기본 테마인 회색 배경 테마를 깔끔한 테마로 변경한다. 그래프의 내용이 눈에 잘 안 들어오기 때문이다. (개인적으로 theme_light()를 좋아한다.)

그리고 선이나 바의 색상을 의미가 통하는 색상으로 변경한다. 예를 들어 성별을 표시할 때 여성이면 빨간색, 남성이면 남색이라든가 (편견이라고 할 수 있지만 그래도 눈에 잘 들어오는 건 사실이다ㅜ) 가맹점의 트랜잭션을 표현할 때 이마트면 노란색, 파리바게뜨면 남색 등등 최대한 한눈에 들어올 수 있게 보편적으로 만든다.

어느 쪽 그래프가 더 눈에 잘 들어오나?

 

그럼 아래 두 그래프 중엔 어떤 그래프가 눈에 더 잘 들어오나?

 

영어로 된 변수명은 제발 웬만하면 한글로 바꾸자. 왠만하면 숫자에 콤마도 좀 찍어주고. 정말 작은 차이이고, 분석 결과에 차이가 나는 것도 아니고, 별거 아닌 건 맞는데, 정말 읽기 싫어진다. 기껏 열심히 한 결과물인데 저 사소한 것 때문에 남이 제대로 안 읽어주면 본인만 손해다.

 

4. 적절한 제목과 설명 붙이기

그림만 그리지 말고 친절하게 글도 써주자. 같은 그래프를 가지고도 다른 해석을 하고, 그 해석을 악용하는 사람도 정말 많다. (그래놓고 꼬낄콘씨가 그렇게 분석했는데요? 라고 하는 경우도 발생한다...)

그리고 보고서 제목이던, 그래프 제목이던 제목은 정말 중요하다. 이 보고서를, 이 그래프를 자세히 봐야 하는지 아닌지를 제목을 보고 판단하는 사람들이 많다. 내용을 가장 잘 설명할 수 있으면서도 매력적인 제목을 지어주자.

 


 

여기까지 읽은 사람 중에는 당연한 얘기를 왜 이렇게 길게 늘어서 써놨나 싶은 사람도 있을 것이다. 회사생활을 하면서 시각화나 문서화 같은 '포장 작업'을 중요하지 않은 업무, 내지는 불필요한 업무, 내가 할 일은 아닌 업무라고 생각하는 사람들을 많이, 종종 마주치던 게 생각나서 이 글을 썼다.

사람들은 내 분석이 얼마나 가치 있는 일인지를 단편적인 결과물인 리포트를 통해서만 판단한다. 그리고 이 결과물들에 대한 평가가 쌓여서 결국 나의 평가가 된다. 난 그래서 리포트를 열심히 쓴다.

그리고 시각화나 리포트를 열심히 쓰는 사람을 두고 종종 평가가 엇갈린다. 같은 분석가가 하는 평가와 기획자/마케터가 하는 평가가 다르고, 같은 레벨의 동료 평가와 직책자의 평가가 다르기도 한다 - 쟤는 보고자료만 그럴듯하게 써, 라던가?

그렇지만 나중에 본인이 남에게 리포트를 받아보는 입장이 된다면, 똑같이 평가하게 될 것이라고 나는 확신한다. 본인이 열심히 작업한 결과물을 똥으로 만들지 말자.