본문 바로가기

직무/IT

[R] R이란 무엇인가

 

 

 
1. R이란 무엇인가?
 
R은 데이터를 분석하는 데 사용되는 소프트웨어로서, 기업/학계/언론 등 다양한 분야의 데이터 분석가들이 R을 사용하고 있고, 이제 막 데이터 분석 공부를 시작한 입문자들도 R을 익히고 있습니다. R은 수많은 데이터 분석 도구들 사이에서 큰 인기를 끌고 있으며, 점유율도 계속 높아지고 있습니다.
 
 
 
2. R의 용도
 
1) 통계분석
테이터의 특성을 살펴보는 기초 통계 분석부터 가설검정에 사용되는 고급 통계 분석 기법에 이르기까지 다양한 통계 분석 기법을 활용 할 수 있습니다.
 
2) 머신러닝 모델링
머신러닝은 다량의 데이터를 이용해 특정 변수를 예측 할 수 있는 예측 모형을 만드는 기법을 말합니다. R에서는 랜덤 포레스트, SVM, 딥러닝 등 최신 머신러닝 알고리즘을 쉽게 활용할 수 있습니다.
 
3) 텍스트 마이닝
텍스트 마이닝 기술을 이용하면 문자로 이루어진 데이터를 분석할 수 있습니다. 예를들어, 문장에서 자주 등장하는 단어를 찾거나 어떤 감정을 나타낸 단어가 자주 사용되는지 분석할 수 있습니다.
 
4) 소셜네트워크 분석
트위터, 페이스북과 같은 소셜 네트워크 서비스에서 사람들이 어떤 관계를 형성하고 있는지, 어떤 경로로 메시지가 퍼져 나가는지 분석하는 소셜 네트워크 분석 기술을 이용 할 수 있습니다.
 
5) 지도 시각화
위도, 경도 등의 지리 정보와 지역 통계를 활용해 국가별 GDP, 시군구별 범죄율 등 지역별 특성을 지도로 표현 할 수 있습니다.
 
6) 주식 분석
온라인에서 주식관련 데이터를 수집해 분석할 수 있습니다. 주식 투자에 사용되는 지표들을 계산하거나 그래프로 표현할 수 있고, 실제 투자에 사용되는 투자 시스템을 구축 할 수도 있습니다.
 
7) 이미지 분석
사진, 그림 등의 이미지에서 속성을 추출해 데이터로 변환할 수 있습니다. 추출한 데이터는 이미지 식별 등 영상 처리 알고리즘을 개발하는 데 사용할 수 있습니다.
 
8) 사운드분석
소리 데이터에서 음량, 진폭 등의 속성을 추출해 데이터로 변환하거나 시작화할 수 있습니다. 추출한 데이터는 음석인식 등 사운드 처리 알고리즘을 개발하는 데 사용할 수 있습니다.
 
9) 웹 애플리케이션개발
데이터를 활용한 웹 애플리케이션을 쉽게 개발 할 수 있습니다. 이용자가 입력한 값에 반응해 그래프를 생성하거나 머신러닝 알고리즘을 적용한 결과를 보여주는 등 데이터 분석 기반의 웹 애플리케이션을 구현할 수 있습니다.
 
 
 
3. 왜 R인가?
 
R은 강력합니다. 누구나 무료로 이용 할 수 있는 오픈소스이며, 웹에서 다운로드 후 누구나 사용 가능합니다. 데이터 수집부터 통계, 머신러닝, 그리고 ggplot으로 대표되는 강력한 시각화 도구까지 지원합니다. 또한 인터프리터 언어로 컴퓨터와 내가 대화하는 형식을 통해 실시간으로 분석 결과를 얻을 수 있습니다. 자바와 같은 객체지향 프로그래밍에서는 최소 수십줄을 작성해야만 코드가 잘 돌아가는지 알 수 있습니다. 하지만 R에서는 단 한줄만 입력해도 코드를 잘 넣었는지 원하는 값이 도출되는지 확인 할 수 있습니다.
R이 인기를 끄는 이유는 다양하겠지만, 무엇보다도 가장 큰 이유는 '사용하기 쉽고 접근하기 쉬운' 통계 패키지입니다. 입문 과정이 어렵지 않아 사용자들은 어렵고 깊은 수학적 통계적 개념을 완벽하게 알지 못해도, R을 활용해 자신이 원하는 통계분석을 할 수 있습니다. 데이터의 상관관계를 파악할 수 있고, 원한다면 회귀분석과 같은 기계학습모델도 만들 수 있습니다. 이처럼 R은 상대적으로 다른 프로그래밍 언어보다 배우기 쉽고, 분석 능력이 좋기 때문에 고급 분석가부터 초급 분석가들 사이에서 가장 사랑받는 언어 중 하나입니다.
 
 
 
4.R의 인기도
 
세계적인 규모의 기업들도 이미 R을 많이 사용합니다. (구글, 페이스북, 마이크로소프트, 트위터, 우버, 에어비앤비, 버즈피트, 뉴욕타임즈..)
마이크로소프트는 2015년 1월, R기반 데이터 분석도구 Revolution R을 개발한 레볼루션 애널리틱스사를 인수하고, 얼마 후 Microsoft R Open이라는 R기반 데이터 분석 도구를 내놨습니다. 적극적으로 R 사용자를 고려하는 마이크로소프트의 행보를 보면 R의 영향력을 짐작 할 수 있습니다.
 

 

캐클(kaggle.com)이라는 온라인 데이터 분석 대회가 있습니다. 기업들이 당면한 문제와 데이터를 사이트에 올리면 개인 참가자들이 알고리즘을 개발해 제출하는 방식으로 대회가 진행됩니다. 가장 성능이 좋은 알고리즘을 제출한 우숭자는 거액의 상금과 함께 데이터 분석가로서의 명성을 얻게 되고, 기업은 현업에 적용할 수 있는 훌륭한 알고리즘을 얻게 됩니다. 캐글은 전 세계의 데이터 분석가들이 실력을 검증 받는 동시에 다양한 사람들의 아이디어가 모여 데이터 분석 기법이 발전해 나가는 현장입니다. 캐글에 참가하는 사람들이 가장 많이 사용하는 데이터 분석도구는 바로 R입니다. 참가자의 3분의 1이상이 R을 사용하고, 대회 우승자의 반이 R을 사용해 알고리즘을 개발합니다.
 
세계적인 추세와 마찬가지로 한국에서도 R을 사용하는 기업이 빠르게 늘어나고 있습니다. 특히 데이터 관련 업무가 많은 SKT, KT와 같은 통신회사나 넥슨, 엔씨소프트와 같은 게임회사들은 오래전부터 데이터 분석 업무에 R을 활용하고 있습니다. 구인/구직 사이트를 살펴보면, 카카오, 롯데멤버스, 멜론, 롯데카드, 신한은행, SBS, 한국철도공사 등 데이터 분석 담당자를 채용하는 대다수 조직들이 R 사용 경험을 중요시한다는 것을 알 수 있습니다.