본문 바로가기

COMPUTING/BIG DATA

근황 & 혼공 R데이터 분석 3주차 공부 인증

근황 : 10일간 집 밖을 싸돌아다닌 후기

저는 정말 정말 집돌이입니다. 과거에도 그랬고, 지금도 그렇죠. 저 같은 경우에는 아무래도 남자애이다 보니, 유명 맛집이나 카페, 명소를 찾아다닌 것보다 값싼 PC방을 찾아다니며 친구들과 온라인 게임하는 게 더 익숙합니다. (ㅋㅋ ㅠ) 그렇지만 이대로 그렇게 과거에 얽매이면서 살고 싶진 않다는 생각을 자주 했어요. 그리고 대학을 다니면서, 정말 다양한 사람들을 접했고 제가 있던 세상이 전부가 아니라는 걸 새삼 느꼈었죠. 인천 말고도 국내외 할 것 없이 정말 많은 곳에서 지냈던 친구들을 보면 부러웠습니다. 그리고 제 견문을 넓히기 위해서라도 여기서 머물러서는 안 되겠다는 생각이 절로 들었습니다. 그래서 아직 학업 스트레스로부터 자유로운 시기에 최대한 다양하게, 그리고 멀리 놀러 가려는 계획을 많이 세웠어요. 10일과 11일엔 대관령 부근에서 동물농장과 평창 동계 올림픽 기념관을 방문했죠. 그리고 12일부터 19일에는 도쿄에 다녀왔습니다.

대관령 여행은 우려 속에서 성공적으로 다녀왔습니다. 비가 많이 내릴 거라는 걱정이 너무 많았는데, 다행히 강원도 쪽은 날씨가 너무 좋았습니다. 목장에서 양, 염소, 말 같은 동물들을 볼 수 있었고, 그다음 날 아침에는 올림픽 기념관에서 시간을 보냈습니다. 동기들과 재밌는 보드게임도 하고, 영화도 보고 알찬 시간을 보냈습니다. (이러고 오후에 남부터미널 돌아올 때는 비가 엄청 왔다는..)

 

진짜 푸른 하늘과 초록 들판이 인상적이었던 대관령 주주파크
올림픽에서 메달 따는 건 어떤 기분일까

도쿄 여행은 7박 8일로 너무 길었죠. 길었던 만큼 느낀 점도 많았던 시간이었습니다. 짧게 말씀드리자면, 두 가지정도 얘기할 수 있을 것 같아요. 먼저 도쿄는 real 세계적인 도시라는 점입니다. 오사카 여행 때는 동아시아인, 그러니까 한중일 사람들로만 도배되어 있었어요. 그 덕에 상점을 가도, 무조건 일본어로 대화해야 합니다. 그들은 영어에 절대 익숙하지 않았었죠. 그렇지만 도쿄 사람들은 다릅니다. 많은 영미권 세계인들은 접한 덕분인지, 영어를 할 수 있는 사람들이 많았어요. 그래서 이번 여행 전에 조금 공부하고 간 일본어에 영어를 더해서 다니니 불편함 없이 지낼 수 있었습니다. 

그리고 과거 영광을 간직하고 있는듯, 도쿄의 거리는 고층 건물들로 빼곡했습니다. 마치 빌딩 숲을 거니는 기분이었습니다. 사람도 정말 많았고, 건물들은 밤늦게 까지 환하게 불빛을 내뿜었죠. 어딜 가나 멋진 도쿄 야경을 볼 수 있었습니다.

많은 멋진 사진들을 갖고 있지만, 역시 오다이바 해변 사진이 가장 일품인 것 같다.

이걸 하루 이틀볼 때는 굉장하다!하며 다녔는데, 4일 차쯤 지나니까 슬슬 지치더라구요. 날은 더욱 더워져서 37도를 우습게 찍고, 여전히 사람들은 많고... 그래서 사람이 붐비는 도쿄보다는 한적한 시골동네가 그리워지는 순간들이 많았습니다. 다음 일본 여행은 적극적으로 사람 없는 지방으로 가는 게 좋겠습니다.

 

역시 여행은 3박 4일정도가 적당한 것 같습니다. 너무 오래 집 밖에서 자다가, 막상 집에 오니 적응하기가 힘드네요. 한동안은 밖으로의 여행을 조금 자제하고, 내면으로의 여행을 떠나야겠습니다. 

서론이 너무 길었네요. 그럼 바로 3주 차 공부로 들어가 보죠!

CHAPTER 3 R 프로그래밍 익히기

이번 챕터에서는 드디어 R을 제대로 다뤄보기 시작합니다. 프로그래밍을 할 때 가장 처음에, 중요하게 다뤄지는 게 무엇일까요? 아마 변수와 함수일 겁니다. 이때부터 조금씩 수리적이고 논리적인 사고를 하면서 문제 해결을 해나가게 되지요. 이번 챕터 3에서는 다양한 함수를 사용하면서 데이터 분석하는 법을 배웁니다. 해봤자 아직은 간단한 사칙연산과 조건판단 정도지만, 실은 코딩의 기반이 되는 것들이니 조금은 정리하면서 공부할 필요가 있어 보였습니다.

다행히 R 프로그래밍은 문법이 크게 어렵지 않았습니다. 제가 배웠던 C++의 그것과 매우 흡사했습니다. 그 덕에 그때 생각이 나면서 익숙하게 함수를 부르고 생성할 수 있었네요. 함수 생성하는 것과 반복문과 조건문, 모두 그러했습니다. 처음에 함수명을 말하고 그다음 괄호로 조건을 서술한 후 중괄호로 함수 내용을 담는 것이죠. 크게 어려울 게 없어서 부담 없이 공부했네요.

 

첫 번째 소단원에서는 변수와 함수에 대해 배웁니다. 변수 파트는 사실 챕터 2의 내용과도 겹치죠. 그리고 함수는 R 자체에 내장되어 있는 기본적인 내장함수와 사용자가 생성하는 사용자 정의 함수로 나눠볼 수 있습니다. 프로그래밍을 하다 보면 전자를 응용해 복잡한 후자의 것을 깔끔하게 해내는 게 관건이죠. 여기도 그런 것 같습니다. 제가 사용했던 R기반 프로그램인 Rex도 결국은 사용자 정의함수로 다양한 통계 함수를 제작했을 것입니다. 그리고 그걸 엑셀 환경에서 사용자 친화적인 플러그인 인터페이스로 사용할 수 있게 해 두었겠죠.

두 번째 소단원에서는 패키지를 다루는 법을 배웁니다. 패키지라고 하면, 쉽게 파이썬의 라이브러리 정도로 보면 좋을 것 같아요. 미리 다른 사용자들이 기능이 비슷한 함수들을 모아둔 세트라고 보면 됩니다. 그걸 R환경에서 설치하고 로드(준비)하고 확인하는 방법을 배워봅니다.

마지막 소단원에서는 조건문과 반복문으로 R 프로그래밍의 control flow를 임의로 조정하는 법을 배웁니다. 여기부터는 슬슬 논리적인 사고가 필요해지죠. 그래도 별건 없습니다. 조건에 맞게 제시된 문법을 운영하면 그만이니까요. 또한, 반복문을 배우면서 많은 데이터를 쉽게 기입하고 조절하기 위한 함수인 apply()를 배웁니다. 여기부터는 조금 눈을 크게 떠야 합니다. 안 그러면 [ ] 친 행렬을 제대로 구분 못하고 이상한 연산을 할 수 있거든요. 이것만 조심하면 이번 챕터는 완료입니다.

 

3-1

두 종류의 함수 이용하기. 마지막 사진은 기본미션인 예제6번 문제

3-2

패키지를 이용해 최신 버전 R을 다운로드하고자 했던 나. 그런데 굉장한 혼란으로 빠지게 되는데..
비교적 최신버전인 4.3.0과 구버전인 3.6.3 동시에 갖고 있던 나는 구버전을 삭제하고 다시 돌려봤다. 패키지 로드까진 잘 되는데, 최신버전 다운로드까지는 무리라고 나온다. 뭔가가 잘못 되었다! 여기에 시간을 많이 썼어서 그냥 넘어가기로 했다.
결국 죽어버린 Rex선생님... 다음에 다시 깔고 올께요..
완료 모습

3-3

오. 바로 표를 만들어주네.
3가지 함수의 차이가 느껴지는가?
예제 3번문제. 가우스의 일화로 유명한 문제라 바로 답을 구할 수 있을 것!

기본미션 - p.113의 확인문제 6번 풀고 인증하기

위의 사진 참고!

선택미션 - p.143의 확인 문제 2번 풀고 인증하기

if, else if(*N), else 순이죠. else는 if 조건으로 분류되지 않은 나머지를 모아서 처리하는 녀석입니다. else if는 나머지를 한 번 더 조건절을 걸어 분류하는 녀석이죠. 따라서 처음 13세 미만 어린이를 분류할 때는 if로, 그렇지 않고 19세 미만인 청소년을 분류할 때는 else if로, 나머지 분류되지 않는 20세 이상은 else를 이용해 성인으로 분류해 주면 됩니다.

필기자료

3주차 정리.pdf
2.04MB
3주차 정리_final.pdf
2.04MB

(final 전 파일을 못 지우겠어서 남겨둔 건 비밀)

마무리 및 소감

내용이 이번에도 쉬운 편이라 여행 다녀오고 주말 전에 끝내고 싶었는데, 일요일 막바지가 돼서야 마무리했네요. 생각보다 R과 R studio가 제 노트북 내에서 파일이 엉켜있는 것 같습니다. 계속 패키지 쓰는 챕터가 반복되면 R 스튜디오 클라우드를 쓰는 방안을 적극 고려해 봐야겠어요. 이걸로 족히 반나절은 날린 기분이라 썩 만족스럽진 않은 한 주였네요.

벌써 이번 혼공학습단도 절반이나 지났네요. 나머지 절반만 지나면 완주입니다. 이번에는 타율이 좋은지, 족장님이 힘을 더 쓰시고 계신지 몰라도 기프티콘을 매주 받았네요. 혼공족장님이 주신 기프티콘은 저번처럼 어제 저희 어머니께서 요긴하게 쓰셨답니다 ㅋㅋ 아직 남은 쿠폰은 제가 필요한 곳에 자알 쓰겠습니다. 감사합니다.

 

비가 여전히 많이 옵니다. 늘 안전 조심하시면서 건강! 또 건강하게 지내시기 바랍니다. 그럼, 다음 주는 주말 전에 끝낼 수 있게 부지런히 혼공 하고 올게요! 안녕~

 

출처

혼자 공부하는 R데이터분석 p.102~p.143