[R 프로그래밍] R 프로그램을 시작한다
R 프로그램을 처음 접하게 된 것은 2017년 독일의 여름학기였습니다. 4월부터 여름학기의 시작인데 저에게는 2학기째였고 그 학기에 반드시 들어야하는 전공 필수 과목중의 하나가 바로 "통계"였습니다. 사실 말이 통계지 우리나라 고2,3때 배우는 순열부터, 경우의 수, 확률과 통계를 모두 합친거고 진짜 대학 수준의 통계는 아니었습니다.
사실 저는 문과 출신입니다. 게다가 2005학년도 수능시험자! 바로 7차 교육과정의 첫번째 실험대상이었죠.;; 그래서 저는 확률과 통계는 커녕 경제,경영(상경대지만 문과쪽에 속하죠)에서 반드시 필수로 알아야하는 미분,적분도 배우지 못했습니다. 하하;;
하지만 모든 분이 다 그런건 아니겠지만 해외에서 공부하시거나 해보셨던 분들은 숫자를 보면 많이 좋아하시지 않으셨나요? 저는 지금 유학중이지만 여전히 숫자나 수학이 나오면 그렇게 좋을 수가 없습니다. 왜냐하면 숫자와 수학기호는 독일어를 못알아들어도 이해할 수 있기때문이죠. 언어의 장벽이 무너질 수 있는 유일한 순간입니다.ㅋㅋ 그렇다고 제가 고등학교때 수학을 잘했냐구요? 아니요. 수학을 포기하지는 않았지만 못했습니다. 저는 고등학교 졸업할때까지도 함수라는 개념 자체를 이해 못 했으니까요. 게다가 고등학교 졸업 후 한번도 수학을 접할 기회도 없었는데 10년이 지나 다시 수학을 시작하니.... 1학기때 정말 많이 고생했지요. 헛소리가 좀 많았습니다;;
어쨌든 사실 그 통계시간에는 R 프로그램을 많이 사용하진 않았습니다. 본격적으로 R 프로그램에 매료되기 시작한건 그 다음 3학기때 "경험적, 실험적 경제연구"라는 과목에서입니다. 과목이 뭐 엄청 어려워 보이는데 그냥 사실상 통계수업이었습니다.
교수님은 수업시간에 R 프로그램을 구동하는 걸 보여주셨고 R언어만 익히면 왠지 먹고 살 것 같다는 느낌이 뇌리에 꽂혔습니다. 처음에 통계언어가 나오고 너무 생소한 개념들이 많다보니 정말 학기 중반까지 이해를 잘 못해 너무 힘들었는데 그 시기를 벗어나고 나니 어느새 저는 다른 독일 아이들을 가르쳐 주고 있었죠.;;
그렇다고 잘했다는건 아닙니다. 제 주위에 수학에 대한 센스가 없는 아이들이 좀 많아서요. 그것보다 독일 수학교육의 특성일 수도 있겠다는 생각이 듭니다만.... 주제는 아니니 넘어가죠.
왜 R 프로그램이냐....
한국은 잘 모르겠지만 아직 독일에서는 기업에서 R 보다는 SPSS를 더 많이 사용합니다. 그럼에도 불구하고 대학에서는 R을 가르치고 있죠.
첫번째로 SPSS는 구입비용이 듭니다. 하지만 R은 비용이 들지 않죠. 누구나 공짜로 다운받아 사용할 수 있습니다. 학생에게는 무언가를 지불하지 않고 지식을 습득하는 것이 큰 이득이죠.
두번째로 R은 데이터를 웹사이트에서 계속 업데이트해주고 다운받아 데이터를 사용할 수 있습니다. 연습하기 아주 좋죠. 같은 데이터를 인터넷에서 바로 다운받아 설치만 하면되니까 교수 입장에서도 가르치기가 아주 편할 겁니다.
제가 알기로는 슬슬 기업에서도 R로 바꾸는 추세라고 들었습니다.
자 이제 실전으로 가봅시다!
일단 먼저 설치부터 해야합니다. R 프로그램은 두가지 버전이 있습니다. 그냥 R과 Rstudio 이렇게 두가지가 있습니다.
Rstudio 를 설치하는걸 추천하겠습니다. Rstudio는 훨씬 사용자 중심으로 잘 되어있기 때문이죠. R 설치는 그냥 생략하고 바로 Rstudio로 가겠습니다.
웹사이트는 https://www.rstudio.com/
사이트가 영어로 되어있지만 영어가 친숙해지셔야합니다. 스크롤로 밑에 내리다보면 Open source edition이 보일겁니다. 그 파일을 다운로드 받아 설치하시면 됩니다. 설치하는게 그리 어렵지는 않기 때문에 화면상으로 보여드리는 건 생략하도록하겠습니다.
Rstudio 를 처음으로 실행하면 이와 같은 화면이 보이실겁니다.(전반적으로 모든게 다 같겠지만 저는 맥 사용자라서 윈도우 사용자와 약간 다르게 보일 수 있음을 양해바랍니다.)
인터페이스는 단순합니다. 왼쪽 큰 창이 콘솔 창이라고 하는데 여기에 코드를 입력하고 엔터키를 누르면 값이 출력되지요.
예를 들어 1+1을 입력하고 엔터를 눌러봅시다.
결과 앞에 [1]은 결과 값이 처음 시작한다는 것을 알려주는 겁니다.
다른 예를 들어드리지요
콘솔 창에 20부터 80까지를 결과값에 출력하고 싶습니다.
그러면 명령어는 20:80이라고 입력하면 됩니다.
그러면 이렇게 나옵니다. 첫줄에 [1]이 있고 그 다음줄에는 [32]가 나오지요? [32]의 의미는 51이 출력값의 32번째라는 말입니다.
그런데 계속 콘솔 창에다가 입력하면 문제가 있습니다. 제가 입력한 결과를 저장하지 못한다는 것이죠.
그럼 어떻게 하느냐
왼쪽위에 녹색 원안에 하얀색 플러스 모양을 클릭해서 가장 첫번째 것 R script 를 클릭해줍니다.
자 콘솔 창이 작아지고 왼편 위쪽에 새로운 창이 생겼지요? 여기 1 이라고 써진 곳 옆에다가 간단한 연산을 적어봅시다. 80*50을 적고 중요한건 여기서는 Control(맥은 cmd) + 엔터를 입력해야 콘솔 창에 출력이 됩니다.
그러면 제일 위에 80*50은 남고 콘솔창 밑에 파란색으로 제가 입력한 명령어가, 그밑에 출력값이 나오게 됩니다.
몇가지 연습을 한꺼번에 해볼까요?
35+24
36*256
27/3
356*(3-1)/4
간단한 사칙연산을 출력하는 것은 어렵지 않아보입니다. 나중에 배우겠지만 R의 또다른 장점은 나만의 공식을 저장할 수도 있다는 것입니다.
예를 들어 x <- 23+22 또는 x=23+22 를 입력해봅니다.
그러면 오른쪽 위 창에 x라는 것이 정의 되어집니다.
그리고 다시 스크립트창(왼쪽 위창)에 x+55 를 입력해봅니다.
그러면 콘솔 창에 내가 정의한 x값에 55를 더해 100이라는 값이 출력됩니다.
정말 많은 것을 할 수 있겠다는 생각이 드시죠?
한번 스스로 숫자들을 입력하셔서 연습해보세요
x=23 이라고 정의해도 되고 a<-208*44라고 정의도 해볼 수 있습니다. 단, 제가 아까 x를 23+22라고 정의 했는데 다시한번 x=23이라고 입력한다면 앞에 정의한 x=23+22 가 사라지고 뒤에 것으로 재정의 되니 그것만 유의하시기 바랍니다.
오늘은 R 프로그램의 정말 기본을 한번 살펴보았습니다.
다음시간에는 더욱 알찬 내용들로 다음 포스팅을 이어가보도록 하겠습니다.