R-Studio는 순한 맛으로 부탁해요

그래도 R-Studio는 매운 맛이군요

by 잇문학도

인터넷에 데이터 분석을 검색하면 몇 가지 단어들이 눈에 들어올 것이다.


R, 파이썬(Python), SPSS, SAS, 미니탭


내가 듣게 되는 수업은 R과 파이썬, 그리고 SQL으로 이루어져 있었다. 오리엔테이션에 따르면 SQL은 맛만 본다고 했고, R은 30%, 파이썬은 70%를 사용할 예정이었다.

그중 R이 유독 눈에 띄었다. 이름부터 어렵다. 알?이라고 읽는 게 맞기는 한 걸까?

쉬는 시간에 R을 찾아보니 R-Studio라는 것도 튀어나왔다. 나는 더 혼란에 빠졌다.


지금 와서 쉽게 이야기하자면, R과 파이썬은 프로그래밍 언어다.

말 그대로 컴퓨터와 사용하는 언어이기 때문에 우리가 아는 하얀 또는 검은 바탕의 창에 이상한 언어를 열심히 쳐서 대화를 해야 한다. 마치 옛날의 MS-DOS처럼 말이다.


대충 이런 모습이다.


다행히도 R과 파이썬에는 IDE(통합 개발 환경)이라는 것이 있다. 여러분들이 GAE고생하지 않고 쉽게 사용할 수 있도록 도와주는 프로그램이다. R에게는 R-Studio가 있고, 파이썬에게는 파이참이 있다.

그럼 SPSS나 SAS, minitab(미니탭)은 무엇이냐고? 이 통계 프로그램이다. R이 통계를 위해 태어났기 때문에 비슷한 기능의 프로그램들도 함께 검색되었을 뿐이다.


강남 학원에서 만난 나의 선생님(어린 코린이들의 인도자)께서는, 데이터 분석을 위해 R을 먼저 배운다고 하셨다. 지금 와서 보면 R은 통계로 쓰기에 프로그래밍 언어라 어렵고, 프로그래밍이라고 하기에는 좀 허섭한 부분이 있다. 그럼에도 코딩의 진짜 매운맛을 보면 우리가 시작도 하기 전에 울면서 도망칠까봐 가장 순한 맛을 선택하신 게 아닌가 싶다.


첫날은 쉬웠다. 선생님의 지도하에 우리는 더하기와 빼기를 배웠다. 사방에서 너도나도 손을 들었다.

"선생님 설치가 안돼요!"

"선생님 나누기를 못하겠어요!"

"선생님 더하기는 plus를 쓰면 되나요?!"

"선생님!"




간신히 사칙연산을 풀어낸 내 이마에도 땀이 흘렀다.

'이것이 코딩의 맛인가.. 순한 맛이라더니 생각보다 맵네..'


첫 날엔 이런 걸 배웠다.


쉬웠던 R은 점차 어려워졌다. 초기 우리의 목표는 R로 데이터 프레임을 정리하는 거였다. 말은 거창하지만 데이터프레임은 표라고 봐도 무방하다. 회사에서 맨날 다루는 엑셀과 비슷하다. 다른 점이 있다면 엑셀은 6만 개 이상 데이터를 다루면 화면이 하얗게 되면서 다운된다는 정도?


데이터를 정리하고 수정하는 작업은 ‘전처리’라고 부른다. 미리 처리한다는 뜻이다. 전처리는 본격적으로 데이터를 분석하기 위한 첫 단추다. 그 이후의 남은 단추는 대략 이렇다.

1. 데이터를 가공한다 (전처리) : 필요한 것을 넣고, 쓸모없는 것을 뺀다.
2. 데이터를 분석한다 (분석) : 통계 지식 등을 활용해서 분석한다. 기본적인 Tool이 있다.
3. 데이터를 시각화한다 (모델링&시각화) : 표나 그래프 등으로 눈에 보이게 만든다.


전처리가 반복될수록 나는 미궁에 빠졌다. "이럴 거면 엑셀로 하고 말지.."라는 말이 입 안에 맴돌았다. 사실은 선생님 몰래 몇 개는 엑셀로 정리했다..


전처리는 재료 썰기와 같았다. 요리에서는 재료 손질과 양념 준비가 가장 많은 시간을 잡아먹는다. 본격적인 볶기, 튀기기, 삶기 같은 것은 상대적으로 짧게 진행된다. 그러니 지루하지 않다면 거짓말이다.


전처리한 자료 중 하나


위의 자료는 R에서 기본으로 제공하는 자동차 연비 자료인데, 가장 마지막에 평균 연비와 pass/fail컬럼(세로줄)을 만들어 넣었다. 엑셀이라면 복사/붙여넣기하고 VLOOKUP 몇 번으로 간단하게 끝날 일이지만, R에서는 여러 개의 코딩으로 써서 넣어야 한다. 아래와 같이 말이다.



2주가 넘어가자 이런 작업도 조금씩 편해졌다. 우리의 잔뇌는 위대했다. 복/붙을 배운 것이다! 익숙해지니 R의 장점도 보이기 시작했다. 엑셀로 다루기 어려운 양의 데이터도 코드 몇 줄이면 몇 초만에 해결됐다. 6만 개 정도 되는 인사 데이터를 수정하다가 엑셀이 다운되었던 추억이 주마등 같이 지나갔다. 그때 R을 R고 있었다면 좋았을 텐데..


3주가 지나자 전처리는 물론이고 그래프도 쉽게 만들 수 있게 되었다. 화려해 보이지만 별 것 아니다. 미리 만들어 놓은 데이터(보통 엑셀표와 같은 형태)가 있다면 한 두 줄 코딩으로 금방 그래프를 만든다.


코딩의 세계에는 '라이브러리'라는 것이 있다. 누가 미리 만들어 둔 만능기계다. 이 라이브러리에 전처리된 자료만 넣으면 쉽게 결과가 나온다. 복잡한 방법을 이해할 것 없이 춘장, 양파, 감자, 면을 넣고 버튼을 누르면 짜잔!! 하고 짜장면이 나오는 것과 같다.


여기까지 배우자 코딩에 대한 자신감이 솟구치기 시작했다.

‘다 만들어진 엑셀 파일이나 표가 있다면 코딩 한 줄로 그래프를 만들 수 있다니. 이 정도 수준을 가지고 코딩이 어렵다고 하다니 우습구먼 껄껄껄.. ‘

순한 맛에 취한 맵찔이는 코를 훌쩍이며 목소리를 높였다.


하지만 진짜 이야기는 3주 후 시작된다.

누가 그랬던가? 성장이란 계단식으로 올라간다고.. 누가 그랬던가? 항상 겸손하라고.. 스테이 풀리쉬..스테이 헝그리..

모두들 R에 대해 익숙해지자 선생님께서는 어느 날 순한 맛에 고춧가루를 치기 시작했다.


여러분, 이제 R로 머신러닝을 해보도록 하겠습니다


네? 러닝머신이요?




IT공부를 위해 나누는 정보

https://theorydb.github.io/dev/2019/05/01/dev-r-rinstall/ R과 R-Studio 설치 설명이 잘되어 있다.

물론 R과 R-Studio는 모두 공짜다!






keyword
매거진의 이전글4차 산업혁명의 낙오자