바야흐로 데이터의 시대이다. 많은 매체에서 툭하면 '데이터'라는 단어가 등장하고 많은 책에서 '데이터'를 자신들의 제목에 포함시키고 있다. 심지어 대학에도 '데이터'학과가 생겼고 중고딩들도 '데이터'를 배우고 있다.
'데이터를 배운다'는 것은 과연 무엇인가? 굉장히 추상적인 질문이지만 데이터를 배운다는 것은 필히 데이터를 분석하는 법을 배운다는 말일 것이다. 그렇다면 데이터를 분석하는 법을 배우는 것은 무엇인가? 정말 애매한 말이다. 이것은 정말 하나로 딱 정의하기 쉽지 않다.
무엇보다 데이터를 분석하는 행위 자체가 큼직한 몇 개의 단위로 나누어져 있기 때문이다. 먼저 데이터를 모아서 깔끔하게 클리닝 하는 과정이 있다. 이 과정이 개인적으로 가장 비중이 크고 빡센 과정이라고 생각하는데, 왜냐하면 웬만한 데이터들이 대부분 지저분하고 정리가 안되어 있기 때문이다. 때문에 어떻게 이런 데이터를 깔끔하게 가져와서 효율적으로 저장할지가 분석가의 가장 중요한 능력 중 하나라고 생각한다. 그리고 꽤 귀찮은 작업이다. 솔직히 웬만한 문제들은 이렇게 데이터를 깔끔하게 잘 저장만 해도 풀 수 있다.
그리고 이어서 이렇게 정리된 데이터를 분석하는 과정이 있다. 보통 많은 강의나 책들이 다루는 부분인데, 데이터가 있으면 선형 회귀분석이나 군집화 등 각 종 알고리즘을 적용하여 결과를 내는 작업이다. 사실 요즘은 많은 알고리즘들이 다 모듈로 나와있기 때문에 데이터를 정리만 잘 해 놓으면 적용하기 쉽다. 다만 이 것을 해석하는 게 더 문제일 것이다. 여기서 도메인 지식이 필요하다. 도메인 지식이란 부동산 데이터를 분석한다면 부동산 영역의 지식이 필요한 것처럼 특정 영역의 지식이란 생각하면 된다.
마지막으로 결과를 해석하고 남들에게 보여주는 과정이 있다. 같은 과정을 도출하더라도 어떻게 남들에 더 효율적으로 보일 수 있는지 고민해야 한다. 일단 결과를 어떤 지표로 나타낼 것인지부터 고민해야 한다. 예를 들어 통계학에서 자주 사용되는 가설 검증으로 내 주장을 들어낼 것인가, 아니면 특정 지표를 계산 헤서 결과를 도출할 것인가, 모두 상황에 따라 다르다. 여기서 더 나아가면 데이터 시각화를 해야 한다. 단순한 수치보다 시각화하는 것이 사람들에게 더 와 닿기 때문이다.
개인적으로 데이터 분석을 시작한다면 무조건 데이터를 정리해서 잘 저장하는 방법을 배우라고 조언해 주고 싶다. 사실 이런 게 잘 되지 않는다면 그 뒤의 머신러닝이니 딥러닝이니 하는 것은 아무런 소용도 없다. 그리고 웬만한 문제들은 정말로 DB에 잘 저장되면 저절로 풀리는 것들이 많으니 이 과정에 정말로 유의하길 바란다. 만약 파이썬을 쓴다면 같은 이유로 데이터 프레임(DataFrame)에 저장하는 방법을 제대로 숙지해야 한다. 이 것은 다음 포스트에 다루어 보겠다.