안녕하세요! 기형쌤입니다!
갑자기 날이 추워졌네요. 다들 감기 걸리지 않게 조심하시구요ㅠㅠ
이 시국에 감기 한 번 잘못 걸리면 너무 불안하잖아요
코로나가 아닌지? 그냥 감기인건지? 우리 그런 일을 겪지 않게끔
최대한 조심하면서 살자구요!
오늘 제가 가져온 이야기는 바로 R 언어에 관한겁니다.
R언어? 그게 뭐지? 하고 생소해 하실 분들도 계실텐데요
R 언어는 빅데이터 관련업계 종사자분들이
거의 필수적으로 알고계셔야 하는 프로그래밍 언어 중 하나입니다.
왜 그런걸까요? 같이 알아보도록 해요!
R언어는 1993년 뉴질랜드에 위치한 오클랜드 대학교에서 개발된
통계 및 그래프 작업을 위한 인터프리터 프로그래밍 언어입니다.
영국식 언어를 사용하는 뉴질렌드에서 개발한 언어여서 그런지
color를 colour 라고 쓰는것도 인정되는 특징이 있습니다.
다른 프로그래밍 언어들 및 통계 솔루션과 비교하자면
SPSS, STATA, SAS 등 유사 소프트웨어들이 있고 요즘엔 Python도 많이 사용하고 있습니다.
SPSS는 통계학용이라는 목적만 같을 뿐 실제로 사용해보면 나머지 언어들과는 좀 다릅니다.
STATA는 R에 비해 프로그래밍 자유도가 낮다는 등의 단점이 있지만,
대신 계량경제학(특히 실증미시경제학)에 특화되고 상대적으로 배우기 쉽다는 장점이 있습니다.
SAS는 유료 통계분석 언어중에 가장 유명한 언어입니다.
위의 언어들 중 그나마 R에 가장 가깝다고 할 수 있는 언어이기도 합니다.
Python은 앞의 언어들보다는 좀 더 일반적이고 범용성이 큰 언어입니다.
통계나 수치해석을 위한 라이브러리를 동원해 통계분석용으로 쓸 수 있습니다.
Python에 관한 자료는 제가 이전에 게시해놓았던 Python 자료에서 보실 수 있습니다.
R언어의 장점
이렇게 비슷한 성향의 언어들이 있는데 왜 R 언어를 사용하는 걸까요?
그 이유는 일단 첫 번째로 오픈 소스로 배포되고 있어 무료로 사용이 가능하다는 점이 있습니다.
SPSS나 MATLAB과 같은 상용 프로그램을 구입하지 않아도 된다는 장점이 있습니다.
또 R언어는 오픈소스 언어이기 때문에 그러한 언어들의 특징인
사용할 수 있는 수많은 통계 관련 패키지가 개발되어 있어서 인터넷을 통해 이 패키지들을 설치하는 식으로
무수한 기능 확장이 가능합니다.
애초에 통계학자들이 만들어 낸 언어이기도 하고 통계 전문 언어 중 가장 보편적이기 때문에
내가 사용하고 싶은 모든 통계 기법이 이미 어딘가에 패키지 형태로 구현되어 있다고 봐도 무방합니다.
또한 그래픽 관련 패키지를 설치하면 간단하게 다양한 그래프를 활용할 수 있으며
구글이나 네이버 지도를 불러오거나 이를 활용해 GIS 용도로 쓰는 것도 가능하게 해줍니다.
웹 어플리케이션 개발 프레임워크인 Shiny의 고도화로 통계 또는 머신러닝 모델을 웹과 연동할 수 있고,
가장 중요한 데이터 마이닝, 빅 데이터 프로세싱, 기계학습 등에 유용하게 사용할 수 있습니다.
통계와 관련된 언어이기에 리스크, 재무, 마케팅 담당자 채용 시 R 능통자를 우대하기도 합니다.
R언어의 단점?
이렇게 좋은 수많은 장점을 가진 R언어는 왜 사람들이 많이 알지 못 하는걸까요?
그 이유 중 커다란 파이를 차지하는 이유 중 하나는 바로
어려워서 입니다.
물론 이것은 컴퓨터 공학자가 아니라 일반인 입장에서 어렵다는 것입니다.
그 이유는 R자체가 원래 통계 프로그램인 S를 그대로 배껴서 만든 프로그램이었기에
R은 원래 통계분석 프로그램이였습니다.
문제는 통계학자들도 R언어를 배워야하는데, 프로그래밍이 가능하게 만들면서
다양하게 만들고 분석할 수 있는 가능성을 갖음과 동시에, 프로그래밍을 알아야 한다는 단점이 생겨버렸습니다.
통계분석 프로그램으로 유명한 SAS, STATA, Minitab에 비하면 월등히 어려워서
한 동안은 대학에서도 취급하지 않았고, 일부 저널에서는 받아주지도 않았었습니다.
다만 2000년대 중후반에 코딩이 중요해지면서, R의 인기가 올라갔습니다.
그 이유 중의 커다란 파이를 차지한 것은 다름이 아닌 공짜 라는것 때문이었습니다.
통계 분석하는 함수들이 기본적으로 들어가있으면서,
무료로 프로그래밍이 가능하기에 현재 많은 통계분석 프로그램 유일하게
SAS의 명성을 따라잡을 수 있는 언어가 되었습니다.
안타까운 것은 프로그램 자체의 한국어 기능을 제공하지 않는다는 점입니다.
다른 프로그램들마냥 한국어 주석을 생각없이 넣었다가는
코드를 잘 짜놓고도 오류가 가득한 모습을 볼 수 있을것입니다.
특히 함수나 for문 등 연속적인 작업이 이루어지는 코드 내부에
한글로 이루어진 주석을 꽉꽉 채워 넣거나 한다면...그러지 않기만을 바랍니다ㅎㅎ
개발환경
RStudio라는 환경에서 개발을 하는 것이 가장 무난합니다.
R 본체가 설치되어 있어야 작동하며, 훨씬 편리한 인터페이스를 제공하는 것이 강점입니다.
단, 폴더 경로나 파일 이름에 한글이 들어가면 제대로 작동하지 않을 수 있으니 주의해주셔야 합니다.
그 외의 에디터들에는 ConTEXT, jEdit, LyX 등이있지만 보통
R에 대한 문법 검사와 코드 색상을 지원하는 플러그인 형태로 제공됩니다.
R언어를 배우려면?
이제 R언어는 빅데이터 개발자 쪽으로 진로를 정하신 분들이라면
하둡 프로그래밍과 함께 무조건 배워야하는 언어로서 자리잡았습니다.
그렇다면 어디서 R언어를 배울 수 있을까요?
저희 빅데이터 전문가 과정에 R언어를 배우실 수 있는 과정이 포함되어 있습니다.
R언어 이전의 C, Python 등 필요한 언어들을 배워가시면서
진행하실 수 있으니 부담스러워 하지 마시고 문의주세요.
하단의 네임카드를 클릭해주시면 바로 상담 가능합니다.
'IT 정보나눔!' 카테고리의 다른 글
해커! 어디까지 알고있니? (0) | 2020.12.16 |
---|---|
가상머신과 클라우드 컴퓨팅? (0) | 2020.12.15 |
빅 데이터 프로세싱(Big data processing)이란 무엇인가? (0) | 2020.12.12 |
C++ 이 C와 무엇이 다른걸까? (0) | 2020.12.11 |
C 언어는 무엇일까? (0) | 2020.12.10 |