배웠는데 필요 없으면 어떡하죠?
기획자이거나 기획자가 되고 싶은 당신, "나도 파이썬을 배워야 하지 않을까?"라는 고민을 한 적이 있지 않나요? 그런데 막상 배우면 실무에 도움이 되지 않을까 봐 걱정되진 않았나요?
아래에서 몇 가지에 "yes"라 답하는지 체크해보세요. 5개 이상이 "yes"라면, 더는 파이썬을 외면할 수 없을 때인지도 몰라요.
<기획자가 파이썬을 배워야 할 때>
1) 분석해야 하는 데이터가 많아서 시간이 오래 걸린다.
2) 다른 데이터를 같은 프로세스로 여러 번 분석해야 한 적이 있다.
3) 결측치(#N/A, 0 등)를 한꺼번에 처리해야 한 적이 있다.
4) 분석 방법에 관한 자료가 더 많이 필요하다.
5) 돈 내고 사용해야 하는 통계 분석 프로그램을 설치하기 어렵다.
6) 개발자와의 소통 비용을 줄이고 싶다.
7) 기획자로서 경쟁력을 갖추고 싶다.
앞으로의 글은 다음의 세 가지 꼭지를 다룹니다. 파이썬을 데이터 분석 업무에 적용해본 저의 작지만 소중한 경험을 바탕으로 작성했어요.
1. 기획자에게 필요한 데이터 분석 역량
2. 기획자가 파이썬을 왜 배워야 할까?
3. 배운다면 어느 정도까지 배워야 할까?
그럼 순서대로 이야기를 이어가 볼까요?
기획자도 데이터를 분석해야 한다는 최근 트렌드를 무시할 수 없습니다. 시간이 흐를수록 많은 IT 기업들이 서비스 기획자에게 데이터 추출과 분석 역량을 요구합니다. 서비스 기획자 채용 공고에서 SQL과 python과 같은 단어를 심심치 않게 볼 수 있죠.
기업에서 원하는 이상적인 서비스 기획자는 "1) 데이터를 추출하고, 2) 전처리하고, 3) 적절한 테스트 도구로 분석하고, 4) 결과를 해석하는" 역량을 갖춰야 합니다.
대부분의 기획자는 데이터 분석 프로세스에서 일정 부분 도움을 받아야 합니다. 하지만 더 많은 프로세스를 기획자가 직접 처리할수록 분석 업무를 더 빠르고 정확하게 끝낼 수 있죠. 기획자가 파이썬을 쓴다면 2번 전처리와 3번 분석 과정을 더 빠르게 수행할 수 있습니다.
도입부에 소개했던 "기획자도 파이썬을 배워야 할 때"의 7가지 케이스를 통해 파이썬의 장점을 구체적으로 설명해볼게요.
1) 분석해야 하는 데이터가 많아서 시간이 오래 걸린다.
컴퓨터에 따라 다르겠지만, 엑셀에서 행이 몇천 개 이상 넘어가면 처리 속도가 느려집니다. 특히 vlookup 등으로 두 개의 테이블을 합치면 오랜 시간을 대기해야 하고 급기야 오류가 발생하기도 합니다.
파이썬은 대량의 데이터 분석이 가능한 툴입니다. 데이터가 너무 많아서 엑셀이 버벅거리거나 원하는 테스트 방식을 엑셀에서 지원하지 않는 경우가 자주 발생한다면 파이썬으로 넘어갈 때입니다.
2) 다른 데이터를 같은 프로세스로 여러 번 분석해야 한 적이 있다.
분석해야 할 데이터의 전처리나 분석 과정이 복잡한 경우, 엑셀은 비효율적인 툴입니다.
여러 버전의 데이터를 같은 방식으로 전처리하고 분석해야 할 때가 있습니다. 엑셀에는 분석 프로세스 자체를 저장하는 기능이 없습니다. (엑셀에도 자동화/프로그래밍 기능이 있지만 그걸 새로 배울 바엔 파이썬을 배우는 게 낫다는 의견입니다.) 엑셀을 쓴다면 분석할 데이터가 바뀔 때마다 모든 프로세스를 처음부터 다시 수행해야 합니다. 이럴 때는 코드를 짜 놓고 새로운 파일을 불러오기만 하면 되는 파이썬이 훨씬 효율적입니다.
3) 결측치(#N/A, 0 등)를 한꺼번에 처리해야 한 적이 있다.
위 2번과 비슷한 내용입니다. 처음에는 원본 파일로 분석을 했어요. 그런데 분석 중간에 "A 로그가 0건인 사용자는 제외"하는 것이 좋겠다는 생각이 들었습니다. 이럴 때 엑셀이라면 원본 파일로 돌아가서 처음부터 다시 시작해야 합니다. 하지만 파이썬은 코드를 한 줄만 추가해주면 됩니다. "A열이 0인" 행을 삭제한 버전과 원본을 따로 저장해놓고 동일한 프로세스로 분석을 수행할 수 있습니다.
게다가 결측치(#N/A, 0) 처리가 쉽습니다. 엑셀에서는 필터를 만들고, 걸고, 삭제하는 과정을 거쳐야 하지만, 파이썬에서는 "A 열이 0이 아닌 행만 저장하겠다"와 같은 코드를 한 줄만 추가하면 됩니다. 직접 코드를 작성하기 어렵다면 구글링으로 다른 똑똑한 사람들이 적은 코드를 복사하면 됩니다.
4) 분석 방법에 관한 자료가 더 많이 필요하다.
5) 돈 내고 사용해야 하는 통계 분석 프로그램을 설치하기 어렵다.
많은 데이터 사이언티스트가 파이썬을 사용하고, 블로그에 코드를 공유합니다. 전문가의 블로그를 따라 하면 생각보다 쉽게 데이터를 분석해낼 수 있습니다.
이번에 제가 데이터를 분석하면서 참고한 블로그 두 개입니다. 3개 그룹 평균값 차이의 유의성을 검증하는 방법을 알려줍니다. 대학원 때 SPSS와 PLS를 사용하면서 헤맸던 저에게 돌아가서 "파이썬으로 해..!"라고 외치고 싶네요.
그리고 파이썬은 좋은 무료 툴이 있습니다. "아나콘다 내비게이터"를 설치한 후 마음에 드는 툴을 사용하면 됩니다. 저는 교육을 받을 때 Spyder나 Jupyter 노트북을 사용했습니다.
6) 개발자와의 소통 비용을 줄이고 싶다.
글 혹은 말로 전달하는 요청 사항은 내 의도대로 받아들여지기 어렵습니다. 말과 글은 코드보다 명확하지 않기 때문입니다. 개발자가 기획자의 의도를 100% 이해해서 처음부터 데이터를 완벽하게 추출하는 것은 어려운 일입니다.
기획자는 담당한 서비스의 기획 의도와 목표에 대한 이해가 누구보다도 뛰어납니다. 따라서 기획자가 데이터 개발자에게 추출이나 분석을 요구하지 않고 직접 할 수 있는 영역이 늘어날수록 업무의 효율성이 증가합니다.
데이터 분석 과정에서 기획자가 개발자에게 데이터 추출이나 분석을 요청하면 발생하는 소통 비용은 이 글에 잘 정리되어 있습니다.
7) 기획자로서 경쟁력을 갖추고 싶다.
개발자는 다룰 수 있는 개발 언어, 디자이너는 디자인/프로토타이핑 툴로 자신의 역량을 비교적 객관적으로 표현할 수 있습니다. 기획자도 "저는 데이터 분석을 할 수 있어요"보다는 "파이썬으로 데이터 분석을 할 수 있어요"라고 말했을 때 기획자의 역량이 조금 더 객관적으로 이해될 수 있겠죠. 특히 어느 직군에서나 데이터를 잘 다루는 사람은 실적을 숫자로 보여줄 수 있다는 점에서 좋은 인재입니다.
데이터 사이언티스트 교육 과정 자료로 Zero-base의 커리큘럼을 참고했습니다. 저는 1~3개월 차에 배우는 파이썬부터 데이터 시각화까지의 과정을 기획자가 할 줄 알면 데이터 분석 업무와 역량 강화에 도움이 된다고 생각합니다. (자료구조, 알고리즘은 제가 잘 모르는 파트여서 제외했습니다.)
<이상적인 서비스 기획자의 역량>
1) 데이터를 추출하고 (SQL/크롤링)
2) 전처리하고 (SQL, 파이썬, EDA)
3) 적절한 테스트 도구로 분석하고 (파이썬, 통계, 데이터 시각화)
4) 결과를 해석하는 역량 (데이터 시각화)
지금까지의 제 경험으로 위의 교과 과정을 배울 수 있는 곳을 나누어봤습니다.
1) 대학/대학원에서 배울 수 있는 것
- 기초 수학, 통계, EDA(Exploratory Data Analysis)
2) 회사에서 배울 수 있는 것
- 데이터 구조, 데이터 시각화
3) 외부 강의에서 배울 수 있는 것
- SQL, 파이썬 프로그래밍
사실 요즘 배움의 경계가 사라지는 추세라, 만약 회사 선임이 SQL을 사용한다면 회사에서도 배울 수 있습니다. 직장인을 위한 데이터 대학원에도 SQL/파이썬 강좌가 있습니다. 인터넷 강의나 유튜브로 독학한 후 자격증을 취득하는 사람도 있죠.
다만, 데이터 시각화 방법은 회사에서 보유하고 있는 데이터의 특성과 사용하는 툴에 따라 차이가 있습니다. 시각화에 대한 개념은 외부에서 배우더라도 자세한 내용은 회사 안에서 배워야 합니다.
파이썬 데이터 분석이 나에게 남긴 교훈
- 저 같은 문과 출신 기획자도 파이썬으로 데이터를 분석할 수 있습니다. 이번에 실제로 할 수 있다는 것을 확인했죠.
- 작년 7월 글에서 "엑셀이 아니라 파이썬으로 데이터를 분석하는 것이 목표"라고 했는데, 22년 1월에 드디어 이루었습니다! 저 자신에게 칭찬하는 시간을 잠시 갖겠습니다. 뿌듯하네요.
- 겁먹지 않고 배우는 데 시간을 좀 쓰면 생각보다 빨리 배울 수 있습니다.
- 모든 학습이 그렇듯 남에게 배우기보다 실제 데이터로 이렇게 저렇게 만져봐야 더 빠르게 배울 수 있습니다.
- 엑셀로 할 수 있는 것도 파이썬으로 해 버릇하고, 기본적인 코드가 손에 익으면 좀 더 빨리 할 수 있을 것 같아요.
- 앞으로는 파이썬이 엑셀을 대체하지 않을까요? 교과 과정에 프로그래밍이 포함된 현시대의 학생들이 직장인이 되면 모두 기본적으로 파이썬으로 데이터를 다루는 시대가 올 것 같습니다. 10년 후에 조금이라도 덜 뒤처진 사람이 되고자, 오늘도 한 발짝 나아가려고 합니다.