R 과 python 중에 무엇을 공부해야 할까요?

R 과 python 중에 무엇을 공부해야 할까요?

preface

최근 빅데이터 분석을 위해 떠오르는 두 가지 언어가 있는데, 바로 R 과 python 입니다.

범용성과 확장가능성 등 수많은 장점을 가지고 있지만, 가장 큰 장점은 역시 ‘공짜’ 라고 생각합니다. 공짜이기 때문에 사용자 층이 넓고 두텁거든요. 커뮤니티가 잘 발달되어있고, 문제가 생겨도 영어의 압박을 뚫고 구글링을 하면 대개 답을 찾을 수 있습니다. 사용자가 직접 패키지를 만들어 배포하기 때문에 최신 분석 방법론을 적용하기 용이하다는 장점도 있습니다. 다만 패키지 유지 보수나 신뢰성 등은 SAS 등 상용 통계 패키지에 비해 다소 떨어진다는 단점이 있습니다.

무엇을 공부하는 것이 좋겠냐는 질문을 주변에서 종종 듣는데, 가장 좋은 답은 ‘둘 다’ 입니다. (…) 하지만 저는 우선적으로 R 을 먼저 배울 것을 추천합니다.

빅데이터라는 단어가 뜨면서 데이터 분석에 앞서 데이터 크기에 집중하는 경향이 있는데, 사실은 데이터의 형태에 보다 주목할 필요가 있습니다. 우리가 생활하면서, 혹은 일상 업무 가운데 부딪히는 데이터는 대개 빅데이터라고 보기 힘듭니다. 데이터의 형테는 크게 정형 데이터와 비정형 데이터로 나눌 수 있습니다.

정형 데이터 는 우리가 일반적으로 일상 업무나 연구에서 부딪히는 데이터를 말합니다. 엑셀로 나타낼 수 있는, 가로축에 변수명이 들어가고 세로축에 관측치가 들어가는 데이터입니다. 물론 그 변수가 숫자냐, 문자냐, 연속형이냐, 카테고리냐 등등 많은 type 을 가질 수 있지만 결국 정형 데이터입니다.

비정형 데이터 는 동영상, 이미지, 녹음 등 엑셀 테이블로 나타내기 힘든 데이터를 말합니다. 아마도 ‘R 과 python 중에 나는 뭘 공부해야하지?’ 라고 생각하시는 분들은 이런 데이터를 분석할 일이 잘 없지 않을까 추측해봅니다.

대부분의 경우, 단일 머신(PC 1대)에서 분석가능한 수준의 정형 데이터를 대상으로 합니다. 이럴 때에는 R 로 시작하는 것을 추천드립니다. python 은 프로그래밍 언어인 반면, R 은 통계 패키지이기 때문에 데이터 분석에 필요한 기본적인 세팅이 되어있는 상태입니다. 여기에 사용자가 원하는 분석 방법론을 가진 패키지를 추가 설치하면 됩니다. R 역시 비정형 데이터 분석도 가능하고, 복수 머신을 사용한 분석도 가능하기 때문에 굳이 python 을 택할 이유가 없어보입니다. 더욱이 요즘은 인공신경망 분석 툴인 tensorflow 도 R 패키지로 나오기 때문에 R 의 유용성이 더욱 높아졌습니다.

하지만 R 역시 한계가 있고, python 도 장단점을 가지고 있기 때문에 결국 둘 다 배우게 됩니다. 하나의 분석을 하나의 툴로 끝내려고 하기 보다는, 분석 과정을 잘게 쪼개어 필요한 부분을 잘 사용할 수 있는 툴로 해결하는 것이 좋습니다.


Tag Cloud

R    SQL    classification    demension reduction    jekyll    python    regression    supervised   
Hyeongjun Kim

Hyeongjun Kim

Financial Economist, Data Scientist, and Hearthstone Player

rss facebook twitter github youtube mail spotify lastfm instagram linkedin google google-plus pinterest medium vimeo stackoverflow reddit quora quora