-
-
고객 니즈가 보이는 데이터 분석 with 파이썬 - 트렌드 분석자가 알려주는 실무 데이터 분석!
정인근 지음 / 길벗 / 2024년 4월
평점 :
개발자가 되고 싶다고 생각했을 때 상상했던 개발자는 인터넷에 있는 무한한 정보들을 타라라타락 코드 몇 줄로 샤라라라락 보기 좋게 만들어내는 그런 개발자였다. 우주의 먼지처럼 부유하는 데이터들을 노가다 아닌 방법으로, 매우 적은 노동력으로, 수많은 보이지 않는 손과 함께하는 것처럼 순식간에 데이터를 연결짓고 의미를 찾아내는 그런 개발자. 하지만 나는 프론트엔드 개발자가 되었고, 데이터 분석과는 거리가 먼 코드를 작성한다. 얼마 전 오픈데이터 행사에 참여해 데이터 크롤링과 분류 작업을 함께 했다. 그때 엄청 많은 데이터를 일일이 수정하고 복붙하면서 큰 현타를 느꼈다. 올해는 파이썬을 꼭 배우고 말겠다고 다짐했다. 프론트엔드 개발자인 내가 이 책을 읽고 리뷰를 쓰는 이유다. 또, 최근에 공공데이터 분석을 통해 시민들의 정보 접근성을 높이는 사이드프로젝트를 시작했다. 이 책을 마스터해서 백엔드에도 기여해 좀 더 양질의 데이터를 제공하겠다는 원대한 목표를 가지고 이 책의 첫 장을 펼쳤다.
1장은 자연어 분석을 위한 환경을 세팅하고 기본 문법을 익히는 챕터다. 파이썬을 사용하지 않는 사람으로서 실습 환경 준비부터 알려주는 점이 좋았다. 책은 윈도우를 기준으로 작성되어 있지만, 맥에 대한 설명도 덧붙이고 있다. 나는 맥 M1을 사용하는데, 간간히 예상치 못한 에러가 뜨기는 했지만 검색을 통해 별 문제 없이 따라 갈 수 있었다. pip 명령어를 쓰니까 계속 error: externally-managed-environment 이렇게 시작하는 에러가 떴는데 스택오버플로우(https://stackoverflow.com/questions/75608323/how-do-i-solve-error-externally-managed-environment-every-time-i-use-pip-3) 글을 참고해서 해결했다.
파이썬을 모르는 사람들도 따라올 수 있도록 1장에 파이썬 문법을 설명하는 챕터가 있다. 판다스와 넘파이 라이브러리를 통해 데이터 프레임을 조작할 때 알면 좋을 주요 함수들에 대한 설명도 있다. 독자를 초보로 전제하고 있어서 평소에 파이썬에 대한 지식이 없더라도, 모르는 게 있으면 ChatGPT에게 물어보거나 하면 충분히 따라갈 수 있을 것 같다. 다만, 그냥 읽기 보다는 직접 실습하며 읽을 때 훨씬 좋은 책이다. 관심 있는 사람들을 모아 스터디를 꾸려 함께 읽으면 좋을 것 같다. 개념 설명 뒤에는 실제로 경기도 인구 데이터와 국민건강보험공단 진료 내역 정보를 바탕으로 분석하는 예제도 있어서 실제 데이터를 보며 앞에서 배웠던 개념들을 복습하는 재미가 있다.
2장은 데이터를 수집하는 방법을 배운다. requests 라이브러리를 이용해서 스크래퍼를 직접 만들어볼 수 있다. 전에 들었던 스크래퍼 강의에서는 잘 정렬된 데이터로 실습을 했었던 반면에, 책에서는 커뮤니티에 있는 텍스트를 긁어오는 실습으로 준비되어 있어서 흥미로웠다. selenium 라이브러리를 이용하는 방법도 배울 수 있다.
3장은 본격적으로 자연어 분석을 해보는 챕터다. 클라이언트에게 데이터 분석을 요청 받았다는 컨셉으로 시작해서, 데이터 수집, 데이터 전처리, 다빈도 단어 분석, nGram 분석, TFIDF로 주요 키워드 찾기, 자주 등장하는 해시태그 찾기와 같은 과정을 함께 따라가며 익힐 수 있다. 개인적으로 국문학 전공이라 형태소 분석하는 부분이 반가웠다. 실제 데이터를 바탕으로 한 예제 케이스가 다양해서 여러 번 과정을 반복하면서 익힐 수 있다. 완벽 마스터했다고 말하기는 어렵지만 다음에 내가 분석하고 싶은 데이터가 생기면 이 책을 참고해서 작업하기 좋을 것 같다.
4장은 자연어 분석에 필요한 통계 개념에 대한 설명으로 마무리한다. 부록으로 GPT 3.5로 자연어 분석하는 방법이 수록되어 있는 점도 흥미로운 점이다.
파이썬도 익숙하지 않은 상황에서 첫 술에 배부르기는 어렵겠지만 자연어 분석에 필요한 전 과정을 차근차근 설명해주고 있는 책이라 내가 실제로 분석하고 싶은 데이터가 생기면 요긴하게 쓸 수 있을 것 같다. 자연어 분석에 큰 관심이 있었지만 어려워 보여서 그동안 시도를 못해봤는데 초보자의 눈높이에서 작성된 책 덕분에 입문해볼 수 있어서 좋았다. 개발 지식이 전혀 없는 상황에서 시작하기에는 조금 어렵게 느껴질 수도 있지만 완독하면 성취감이 클 책이다. 책에서 알려주고 있는 방법을 이용해 나를 클라이언트로 하는 데이터 분석을 시작해봐야겠다.