메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

한빛출판네트워크

그것이 R고 싶다

R스튜디오에서 클라우드까지 데이터 과학자가 꼭 알아야 할 R 패키지 활용법

한빛미디어

집필서

절판

  • 저자 : 양중기
  • 출간 : 2018-07-09
  • 페이지 : 388 쪽
  • ISBN : 9791162240885
  • 물류코드 :10088
  • 초급 초중급 중급 중고급 고급
4.5점 (6명)
좋아요 : 734

데이터 분석에서 시각화까지 패키지로 배우는 실무형 R 입문서 

 

데이터 분석가는 단순히 R 언어를 아는 것을 넘어 업계에서 표준처럼 쓰이는 각종 패키지에도 능통해야 한다. 다양한 기능을 GUI로 제공하는 R스튜디오 사용법을 익히는 것도 중요하고, 클라우드에 분석 환경을 구축하고 웹 앱을 만드는 법도 알아야 한다. 이 책은 실무에서 많이 사용하는 R스튜디오 기능과 각종 패키지 중심으로 R을 학습할 수 있게 쓰였다. 실무 친화적으로 데이터 분석과 시각화 기법을 소개하고, AWS 등 클라우드 환경과의 연동 방법도 설명한다.

 

_733spreads.jpg

 

양중기 저자

양중기

데이터 과학 전문가. 9년간 R 언어를 다뤄왔으며, 20편 이상의 데이터 분석 논문을 발표했다. 의학 연구소에서 데이터 분석을 시작하여 기업, 대학, 연구, 기관 등 다양한 조직의 데이터 분석을 진행했다. 현재 게임 데이터 분석팀을 이끌어 빅데이터 처리 프로세스를 개발하며, 데이터에서 인사이트를 발굴하고 데이터 기반의 게임 환경에 긍정적인 변화를 일으키는 데이터 전문가로 활동하고 있다.

PART 1 데이터 과학과 R 언어

CHAPTER 1 데이터 과학으로 가는 길

1.1 데이터 과학의 길

__1.1.1 데이터로 하는 일은?

__1.1.2 데이터와 관련된 직업은?

__1.1.3 데이터 과학자에게 필요한 역량은?

__1.1.4 데이터 과학자가 되려면?

1.2 데이터 과학 기술 트렌드

__1.2.1 데이터 분석 언어

__1.2.2 데이터 분석 기술

__1.2.3 데이터 시각화 기술

 

CHAPTER 2 데이터 월드 경험하기

2.1 R, MRO, R스튜디오 설치하기

__2.1.1 R 설치하기

__2.1.2 MRO 설치하기

__2.1.3 R스튜디오 설치하기

2.2 R스튜디오 살펴보기

__2.2.1 기본 레이아웃

__2.2.2 새 프로젝트 만들기 

__2.2.3 프로젝트 저장

__2.2.4 R스튜디오와 R 연동하기

 

 

PART 2 R 기본 배우기

CHAPTER 3 데이터 형태와 구조

3.1 데이터 형태

__3.1.1 특수한 상태를 나타내는 상수

__3.1.2 논릿값(진릿값)

__3.1.3 범주형

__3.1.4 문자형

__3.1.5 숫자형

__3.1.6 데이터 타입 확인

3.2 데이터 구조

__3.2.1 벡터

__3.2.2 리스트

__3.2.3 배열과 행렬

__3.2.4 데이터 프레임

3.3 연산자

__3.3.1 할당 연산자

__3.3.2 산술 연산자

__3.3.3 관계 연산자

__3.3.4 논리 연산자

3.4 함수와 변수

__3.4.1 함수

__3.4.2 기술통계 함수

__3.4.3 전역변수, 지역변수, 매개변수

3.5 제어문(조건문)

__3.5.1 if문

__3.5.2 switch문

__3.5.3 for문

__3.5.4 while문

 

CHAPTER 4 데이터 핸들링

4.1 dplyr와 tidyr 치트시트

4.2 데이터 핸들링 기초

__4.2.1 tbl_df()

__4.2.2 glimpse()

__4.2.3 %>% ( 파이프)

4.3 데이터 열/행 조작

__4.3.1 gather()

__4.3.2 spread()

__4.3.3 separate()

__4.3.4 unite()

4.4 필요한 행만 선택하기

__4.4.1 filter()

__4.4.2 slice()

4.5 필요한 열만 선택하기

__4.5.1 select()

4.6 데이터 조합하기(열 기준)

__4.6.1 bind_cols()

__4.6.2 left_join()

__4.6.3 right_join()

__4.6.4 inner_join()

__4.6.5 full_join()

4.7 데이터 조합하기(행 기준)

__4.7.1 bind_rows()

__4.7.2 intersect()

__4.7.3 setdiff()

__4.7.4 union()

4.8 파생 데이터 만들기 

__4.8.1 mutate()

__4.8.2 transmute()

 

 

PART 3 데이터 분석하기

CHAPTER 5 데이터 가져오기

5.1 CSV, XLS, TXT: 공공데이터포털

__5.1.1 CSV 데이터

__5.1.2 엑셀 데이터

__5.1.3 TXT 데이터

5.2 XML과 JSON: 서울열린데이터광장

__5.2.1 XML 데이터

__5.2.2 JSON 데이터

5.3 데이터베이스

__5.3.1 MS SQL 서버

__5.3.2 MySQL

__5.3.3 dbplyr와 pool 패키지

5.4 R 내장 데이터셋

5.5 빅데이터(feather와 fst)

 

CHAPTER 6 통계분석 기초

6.1 통계분석 기법

__6.1.1 요약통계

__6.1.2 가설검정: 귀무가설, 대립가설, p 값

__6.1.3 평균과 표준편차

__6.1.4 빈도 분석

__6.1.5 분위수와 사분위수

6.2 정규분포와 정규성 검정

__6.2.1 표준정규분포 곡선

__6.2.2 샤피로-윌크 검정

6.3 데이터 검정

__6.3.1 카이제곱검정

__6.3.2 t 검정

__6.3.3 분산분석

 

CHAPTER 7 고급 데이터 분석 기법

7.1 상관분석

7.2 회귀분석

__7.2.1 다양한 회귀분석 방법

__7.2.2 다중회귀분석 실습

7.3 의사결정나무

__7.3.1 의사결정나무 개요

__7.3.2 의사결정나무 R 함수

__7.3.3 의사결정나무 실습

7.4 랜덤 포레스트

 

CHAPTER 8 데이터 시각화

8.1 ggplot2 패키지

__8.1.1 ggplot2 패키지 설치

__8.1.2 소품문 및 참고 자료

8.2 ggplot2 구성 요소와 문법 구조

__8.2.1 메타데이터 생성

__8.2.2 레이어 상속

__8.2.3 colour 매핑과 group 매핑

__8.2.4 기하 객체와 통계 객체

__8.2.5 기하 객체와 통계 객체의 결합

8.3 ggplot2 치트시트

__8.3.1 변수가 하나일 때

__8.3.2 변수가 두 개일 때

8.4 ggThemeAssist 패키지

__8.4.1 ggThemeAssist 패키지 설치

__8.4.2 Settings

__8.4.3 Panel & Background

__8.4.4 Axis

__8.4.5 Title and label

__8.4.6 Legend

__8.4.7 Subtitle and Caption

8.5 ggplot2와 ggThemeAssist 함께 활용하기

 

 

PART 4 클라우드를 이용한 데이터 분석

CHAPTER 9 클라우드 분석 환경 구성

9.1 아마존 웹 서비스

__9.1.1 아마존 웹 서비스 가입하기

__9.1.2 리눅스+R+R스튜디오 구성

__9.1.3 웹으로 R스튜디오 접속하기

__9.1.4 요금표

9.2 애저

__9.2.1 애저 가입하기

__9.2.2 리눅스+R+R스튜디오 구성 

__9.2.3 웹으로 R스튜디오 접속하기

__9.2.4 요금표

 

CHAPTER 10 클라우드 분석 활용하기

10.1 AWS 클라우드로 분석하기

__10.1.1 인스턴스 구성

__10.1.2 R스튜디오 컴파일 설정 및 새 프로젝트

__10.1.3 HTML 컴파일 및 접속

__10.1.4 의사결정나무 R 마크다운 버전

10.2 R 마크다운으로 데이터 연동형 보고서 작성하기

__10.2.1 R 마크다운 치트시트

__10.2.2 R 마크다운 기초

__10.2.3 청크 옵션

__10.2.4 라벨

__10.2.5 기타 청크 옵션

10.3 shiny로 반응형 분석 앱 개발하기

__10.3.1 shiny 웹 앱 생성

__10.3.2 랜덤 포레스트 분석 앱

__10.3.3 의사결정나무 분석 앱

10.4 shiny와 플로틀리로 반응형 시각화 강화하기

R스튜디오에서 클라우드까지 

복잡한 통계, 확률 대신 패키지 중심으로 R 배우기 

데이터 과학 분야가 성장하며 R 생태계도 풍성해지고 있다. R스튜디오는 GUI 기능이 강화되었고, 멀티 스레드를 지원하는 MRO가 널리 퍼졌으며, AWS 등 클라우드에서 R을 이용하고 나아가 반응형 웹 앱을 만드는 것도 간단해졌다. 

 

이 책은 단순히 R 언어를 익히고 기초적인 분석 방법만을 익히는 시중의 책들과 달리, 오늘날 강력해진 R 생태계의 패키지와 도구를 활용하여 실무적인 데이터 분석 능력을 습득할 수 있게 쓰였다. 1부는 데이터가 무엇인지에 대한 개론으로서 데이터 과학자의 역할과 최근 데이터 과학 기술을 소개한다. 2부에서는 R로 데이터를 다루기 위해 알아야 할 데이터 형태와 구조, 그리고 dplyr와 tidyr을 이용한 데이터 핸들링 방법을 정리했다. 3부는 CSV, XML, SQL 등의 데이터를 읽고 기초 및 고급 통계분석을 수행하는 방법과 ggplot2 시각화를 다룬다. 4부는 대중화되고 있는 클라우드를 활용해 분석 환경을 구성하고, 클라우드 환경에서 분석 및 마크다운 보고서 작성을 수행하며, shiny와 plotly로 결과를 실시간으로 확인할 수 있는 반응형 웹 앱을 개발하는 방법도 다룬다.

 

처음 R 언어를 다루는 초보자는 물론, 실무자에게도 꼭 필요한 노하우를 알차게 담았다. 데이터 분석가나 데이터 과학자라는 직업에 도전하려는 많은 사람에게 도움이 되리라 자부한다.

 

주요 내용 

- 데이터 과학자에게 필요한 역량 숙지하기

- R스튜디오 설치하고 R 기초 문법 익히기

- 행과 열 전환, 추출, 선택, 조합 등 데이터 조작

- CSV, XLS, JSON, SQL 등에서 데이터 읽기

- 회귀분석, 의사결정나무, 랜덤 포레스트 등 통계분석과 시각화

- AWS, 애저 등 클라우드 분석 환경 구성 및 활용

R을 공부하는 학생들은 어떻게 R을 시작해야하는지 당황해 하는 경우가 종종 있습니다. 이 책은 R을 활용하는데 기본이 되는 사항들을 알차게 잘 정리하고 있는 책으로, R 스튜디오 설치, R 기본 문법 그리고 데이터를 분석하고 시각화 하는 방법에 대해서 전반적으로 다루고 있습니다. 특히 다른 새로운 점은 AWS 클라우드를 통해서 분석하는 방법을 기술하고 있는데, 클라우드 분석을 통해서, 네트워크 속도나 하드웨어 스팩을 좀 더 유연성있게 사용할 수 있는 방안을 소개합니다.

 

 

[기존 R 도서와의 차별성]

기존의 R 도서의 경우 문법을 중심으로 하는 책들이 상당히 많습니다. 그러나 R을 실제 이용하려할 때 굉장히 걸리는 부분이, 기본적으로 이용해야하는 사항들에 대해서 체계적으로 구성을 하고 있지 않다는 점이죠. 즉 R을 공부할 때는 반드시 통계, 시각화 등 기초적으로 알아야 하는 사항들이 매우 많습니다.

이 책은 이러한 점을 고려한 부분이 있습니다. 기본적으로, 사용하는 방법에 충실하게 내용을 구성했고, 예제를 설명함에 있어서도, 그에 대한 사항을 이해하기 쉽게 찬찬히 설명하고 있습니다. 즉 현업에서 기본적으로 데이터 분석을 할 때 필요한 사항들을 R을 통해 처리하고, 분석할 수 있도록 그 과정을 단계별로 충실히 설명합니다.

[데이터를 처리하는 기술]

특히 이 책에서는 데이터를 분석할 때 현장에서 주로 하게 되는 데이터를 정비에 대해서 언급을 하고 있습니다. 이 점은 이 책에 큰 특징으로, 데이터 정비를 다루는 방법에서 R에서 이용하면 좋을 패키지를 소개하고 있습니다. 특히 Dplyr과 tidyr은 이용하는 방법이 RDBMS의 SQL 쿼리와 사용하는 방법이 매우 유사하기 때문에, 실제 이를 이용하면, 매우 간단하게 데이터를 처리할 하나의 중요한 팁을 배울 수 있습니다.

 

 

인상깊었던 것]

MRO(Microsoft R Open) - 이 책에서는 마이크로소프트웨어에서 멀티 스레드를 지원하기 위해서 R를 수정해서 배포하는 것을 소개했는데, 저의 경우 사실 멀티 쓰레드가 안되서 굉장히 고생한 적이 있었는데, 이 책에서 간단하게 이를 소개해 준 점은 참 좋았습니다.

 

 

또한 이 책에서는 데이터를 수집하는 장소, 국내 공공데이터 포털과 서울열린데이터광장에 대한 소개를 통해, 독자가 사용하고 싶은 데이터를 어디서 얻으면 되는지와 이를 R을 통해 어떻게 수집하는 지를 소개하고 있스니다. 이 점은 기존의 R 책에서는 소개가 잘 안되더 사항인데, 실무에서 이용할 때 참고 하면 정말 좋을 것 같습니다.

 

 

R을 공부하다보면, 문법에 지치거나, 알고리즘에 지치는 경우가 많습니다. 처음 시작을 할 때, 실무에는 바로 쓰고 싶은데, 공부를 하자니 너무 막막한 경우가 많습니다. 이 책의 경우에는 실제 필요한 부분만을 잘 정리해서, R을 이용하는 방법에 대해서 소개하고 있습니다. 처음에 입문과정에서, "아 R을 이렇게 이용하는 구나" 하는 점에서 접근하면 좋을 것 같고, 이후 R에 대해서 구체적인 기본서 등을 참고하면서 실력을 늘려가는 방법도 좋을 것 같습니다.

 

R을 배우고 싶다면, 이 책을 입문서로 해도 좋을 것 같다. 특히, 다양한 클라우드 서비스에서 활용하는 방법까지 소개한다. 내가 생각하기에 요근래의 트렌드는 클라우드를 최대한 활용하는 것이다.

데이터 사이언티스는 어떠한 데이터 집합 속에서의 Insight를 찾는 일이라 생각한다. 그래서 통계, 분석에 관해서 공부를 많이 해야하는데, 이 책은 그 흐름을 자연스러운 연결지어두었다.

 

 

그리고 요즘은 데이터, 정제, 분석, 시각화 순으로 이루어진다고 해도 과언이 아니다. 당연히 R 스튜디오도 시각화를 지원한다. 강력한 라이브러리인 ggpot2을 통한 시각화하는 방법을 소개한다.

그것을 만족한 책이다.

내 인생의 2번째 R 책을 읽어봤다.

 

한 권은 그야말로 프로그래밍 초보자 대상의 책이었고... 

이번 책은 그보다는 조금 더 다양하고 넓은 범위를 다루고 있는 책이다.

 

찬찬히 살펴보면...

 

이 책의 머리말에는 데이터 과학을 공부하기 위한 수단으로써 R을 추천했고, 

이 책의 대상은 R 언어를 처음 다루는 초보자와 실무자를 위한 노하우를 수록하고 있다고 적혀 있다.

 

그래선지, 내가 전에 스터디했던 책보다는 상당히 많은 부분을 다루고 있다.

 

대략 정리해 보면...

 

1. MRO(Microsoft R Open)에 대한 소개. (나는 이런 것이 있는 줄은 전혀 몰랐다.)

2. 각종 데이터 수집 및 다운로드 방법. (특히, API 데이터 다운받는 방법에서 감동 먹었다.)

3. 의사결정나무, 랜덤포레스트 데이터 분석 (시장조사론에서 배운 통계학에선 나오지 않는 내용이다.)

4. 관계형 데이터베이스(MS SQL 서버)와의 데이터 연동

5. ggThemeAssist 패키지를 활용한 데이터 시각화 (시각화 옵션 지정을 이렇게 편리하게 할 수 있다니...)

6. AWS(Amazon Web Service), 애저를 활용한 클라우드 환경에서의 데이터 분석

 

상당히 많은 부분을 다루고 있다.

 

그렇다 보니, 내 생각은... 

이 책은 프로그래밍 언어를 처음 공부하는 완전 초보자에겐 어려울 수 있다고 생각한다.

 

URL에 접속해서 R 소프트웨어를 다운받는 내용 등은 무척 상세히 가르쳐 주고 있지만...

패키지에 포함된 함수를 설명하는 내용이라든지 변수를 지정하고 입력하는 내용... 등

기본적인 사항에 대해선 자세히 설명하고 있지 않다.

 

하나 예를 들면...

"A_score <- c(90, 80, 75, 60, NA); A_score" 라는 코드를...

"5명 중 4명의 시험 점수가 각각 90, 80, 75, 60 이지만 5번째 사람의 점수를 모르는 경우 NA로 표현한 예제"라고 표현하고 있다.

 

"A_score"는 변수고 "<-"은 입력을 의미하고, "c()"함수는 데이터를 하나로 결합시키고, "90~NA"는 시험 점수다...라고 설명해야 이해할 수 있는데 완전 초보자들이기 때문이다.

 

 

물론 프로그래밍이란 것이 모든 함수를 자세히 설명하지는 못한다. (이 책에서는 주요 패키지의 치트 시트를 소개함으로써 책에서 미처 다루지 못한 내용을 참고하길 권하고 있다.)

 

그렇지만 완전한 초보자의 입장에서는 이해하지 못하는 내용이 중간에 섞여 있으면, 학습의지가 꺾일 수도 있기 때문이다.

 

차라리 독자층을 좁히고 내용을 구성하는 게 더 좋았을 것이라고 생각한다.

 

 

그리고 코드를 실습하다 보니... 

R 버전 문제인지, 아니면 다운받은 데이터 문제인지 예제대로 실행되지 않는 경우가 있었다.

 

NHIS_OPEN_GJ_2015.csv 데이터의 필드명 "신장(5Cm단위),체중(5kg단위)"에서 문제가 있었다.

csv 파일에서 필드명을 복사해서 코드에 붙여넣기하면서 해결하긴 했다.

 

참고로 내가 실습한 환경은 R 3.4.3, R 스튜디오 1.0.153 버전이었다.

 

 

이 책에 대한 내 생각을 종합해보면...

스스로 공부하길 좋아하는 독자에게 추천할 만 하다고 생각한다.

 

이 책에선 너무 자세한 설명보다는 스스로 찾아볼 수 있도록 유도하는 부분이 많기 때문이다.

 

당연히 한빛미디어 홈페이지에 가서 실습 코드를 다운받아 돌려볼 수도 있지만...

 

직접 코드를 입력해 보면서 공부하길 추천한다. (난 그렇게 했음에도 여전히 초보자를 벗어나지 못하고 있다. ㅠㅜ)

 

 

그리고 프로그래밍 공부는 정해진 코드를 따라하는 것만으론 충분하지 않고, 스스로 공부하고 코드를 많이 짜보는게 중요하기 때문이다.

 

반면에 약간 아쉬운 점은...

데이터 분석 프로젝트 실무 예제를 주고, 차근차근 순서대로 분석하고 결론에 이르기까지 흘러가는 프로세스에 대한 내용이 있었으면 한다.

 

이 책에서 배우는 코드나 함수 등은 결국 데이터 분석에 활용하기 위함이다.

그러므로 실제 데이터 분석 프로젝트를 통해 R을 활용한 데이터분석 (코드, 함수, 환경설정...) 등을 실습해 본다면 더욱 좋았을 것이라고 생각한다.

 

 

어쨌든 이 책 덕분에 문과생 출신 기획자가 또 한 번 R 언어를 공부해봤다.

 

* 데이터 분석에 사용되는 'R'의 사용법을 안내하는 기술서적이다. R에 대한 아무런 지식이 없는 상황에서도 설치부터 쭉 따라 읽어가다 보면 비교적 손쉽게 기본 지식을 습득할 수 있도록 편집되어 있다. 늘 이야기하는 내용인데 어떠한 자료라도 인터넷을 통해 쉽게 찾고 배울 수 있는 세상이지만 시행착오를 최대한 줄이고 기본 개념을 익히게에는 책만 한 것이 없다.

 

책 제목이 살짝 아재 느낌이 나는 것을 제외하고는 내용이나 구성면으로 봤을 때 위에 언급한 목적을 충분히 달성할 수 있는 가성비 좋은 책이다. 아래와 같은 부분에 매우 마음에 들었다.

 

* 최신 책이다 보니 단순히 R의 사용법만 나와있는 것이 아니라 클라우드 서비스와의 연동이나 MRO(Microsoft R Open)에 대해서도 소개되어 있다.

 

* 예제가 풍부하다. 보통 이런 종류의 책은 예제가 실제 예제가 아니라 개념을 예제 형식으로 기술하기만 해서 실제로 해봐도 제대로 하는 건지 알 수 없는 경우가 있는데 실제 예제가 풍부하기 때문에 직접 따라 하기도 좋고 다양한 예제를 통해 개념을 파악하기도 좋다.

 

* 전면 컬러로 구성되어 있어 가독성이 매우 좋다. 가뜩이나 숫자가 엄청나게 등장하여 보는 것만으로도 정신없을 수 있는데 나름의 일관성 있는 룰에 따른 컬러 배치를 통해 눈에 잘 들어오는 부분이 좋았다.

 

* 실제 공공데이터를 받아 이를 가공하는 분석하는 예제도 좋았다. 이런 부분을 따라 하면서 막히는 부분을 직접 찾아 해결하는 과정에서 실무를 하는 것과 비슷한 효과를 얻을 수 있다.

8월초 찌는 더위를 피하고 지식 습득(?) 이라는 핑계를 대고 교보문고에 갔다가
 
제목이 재미 있는 신간 하나를 발견, 바로 [그것이 R고 싶다], 유명 고발 프로그램 방송의 타이틀을 패러디한 센스에서 
 
일단 한표를 준다.
 
 
 
안그래도 최근 R 관련 서적을 두권 정도 보고 있었던지라 관심이 가서 일단 빨리 훑어본 후에 리뷰를 정리한다.
 
도서의 상세 정보는 아래 링크를 참고
 
 
PART 1은 본론을 위한 서론(?)과 설치에 관한 내용이라 빨리 넘어 갔다.
 
단, 2.1.2 MRO 설치하기는 주목할 필요가 있었다. 
 
다른 출판사의 R 서적에서는 언급이 없었던 MS 버전이고 멀티 쓰레드를 지원한다고 하니 성능 향상을 원하는 분들은 참고하시길.
 
PART 2, 3는 R의 기본 문법과 함수, 실전 데이터 분석을 다루는데 이미 다른 서적에서 봤던 내용들이 대부분이라 빠르게 넘어갔다.
 
약간 아쉬운 점은(개인적인 느낌인지 모르겠지만) 분량의 한계로 인해 설명이 좀 부족해보인다.
 
PART 4, 이 부분이 제일 괜찮았던 내용이다. 다른 책에서는 다루지 않은 아마존 클라우드를 이용하는 법과,
 
R 마크다운, shiny 에 대한 내용이 있다. 이부분 역시 분량이 많지 않은 관계로 맛보기만.
 
결론은 적당한 분량에 R을 처음 사용하는 독자에게는 괜찮을듯 하고, 분량의 한계는 어쩔 수 없으므로 필요하다면 다른 서적을 참고하자.
 
그리고 요즘 한빛미디어에서 출판되는 많은 책들이 컬러 인쇄로 나오는 것으로 보이며, 
 
이 책도 챠트나 그림 많이 나오는데 컬러 인쇄로 인한 가독성이 좋아 만족스러웠다.
 

 

초보자가 R의 매력을 느낄 수 있는 책

장점이자 단점

예제 하나를 할 때마다 거의 하나 이상의 package를 설치해야 한다. 설치부터 자세히 설명해주니 초보자에게 좋기는 하지만, 설치에 문제가 생기는 경우는 난감할 수 있다.

장점

초보자를 대상으로 자세하게 썼다(하지만 여전히 R 설정 관련된 부분을 내가 잘 몰라서인지 쉽게 설치하지 못하는 부분도 있다. 특히 저자는 윈도우에서 했고, 나는 맥에서 해서 더 차이가 있는 듯). 특히 클라우드 부분에서 aws/애저 가입부터 설명을 한 걸 보고 정말 신경을 많이 썼다는 생각이 들었다.
심지어 R Studio editor의 theme을 바꾸는 부분까지 설명하기도 한다(66p).

하지만 이렇게 R Studio의 version/platform 차이로 인해 저자의 설명과 차이가 나는 부분도 있다(74p)

소소한 부분이지만 책 전체가 컬러여서 아무 페이지나 펴도 명확하게 소스와 설명 구분이 쉽고 보기 좋다

단점

(만약 저작권 문제가 없다면) 실습 데이터 파일을 출판사 페이지나 github에 올려줬다면 더 편하게 따라할 수 있었을 거 같다.

part I

언제나 그렇듯 시작하면서 필요한 설치부터 진행하기로 했다. R이나 R Studio는 이미 예전에 설치했는데, mro라는 package를 설치해 병렬 프로세스를 사용할 수 있다기에 당연히 해보았다. 병렬 처리는 개발자라면 누구나 꿈꾸는(?) 부분이니까.

하지만 언제나 그렇듯 잘 되지 않았다.

이리 저리 뜯어보기에는 지금 바쁘기도 하고, 이게 없다고 예제를 따라하는 데 문제가 생기지는 않을 거 같아 일단은 지나가기로 했다. mro 설치는 https://mran.microsoft.com/download서 받아서 해야 하고, 오류가 발생해서 찾아보니(https://github.com/IRkernel/IRkernel/issues/300) X11 설치가 필요해 https://www.xquartz.org/ 서 다운로드를 받았는데, 특히 이 부분이 엄청나게 오래 걸렸다. 왜 이렇게 느린 지 모르겠지만, 거의 4시간 정도 걸려서 받았는데 결국 실패. microsoft의 문서를 보면서 하나씩 다시 설치해봐도 안 되어서 결국 다시 설치할 수 밖에 없었다. 

오류가 발생해서 그런지 나중에 sqldf, dplyr, tidyr같이 나 같은 초보자도 이름은 아는 package조차 설치가 안 되어서 결국 제거하고 다시 설치를 했다.

R 재설치 후 R Studio도 다시 받아 설치하니 library를 설치할 수 있었다

part II

역시 기본 문법 부분을 따라하는 데는 아무 문제가 없다. 다만 문법이 익숙하지 않아서 오는 부분은 여전히 어렵긴 하다.

3차원 배열을 생성하는데, 값이 채워지는 순서가 왠지 어색하다. array index가 1 부터 시작하는 것도 여전히 어색한데, 뒤쪽부터 값이 채워지니 더 어색하게 느껴졌다.

R 사용자들이 여전히 python이 따라오지 못한다고 말하는 부분들이 있는데 대표적인 게 data frame이다.

특히나 어색했던 건 파이프가 %>%였다는 점. |를 사용하지 않은 이유가 있을 거 같긴 한데, 방식이야 리눅스를 사용하는 프로그래머들이라면 누구나 익숙하겠지만 파이프 문자가 |도 아니고 %>%라는 건 정말 어색했다. 그 뒤에 나오는 항목들도 데이터 조작을 위해 모두 필수적인 함수들로 보였는데, select, filter나 *_join 함수들은 아예 sql query를 함수로 만들어 둔 거 같아 작업하는 데 편해보였다. R만의 장점이 조금씩 눈에 들어오기 시작한 시점이었다.

part III

기본 문법을 지나 조금씩 응용을 하기 시작하는 부분이다. data.go.kr에서 데이터를 가져와 진행을 하는데, 사이트는 .go.kr이 붙는 사이트치고 정말 사용하기 편하게 되어 있었다. 건강 관련 정보를 받을 때는 책의 설명을 따라 2015년 데이터를 받고 locale을 euc-kr로 한 후 import를 실행하니 출력하는 데는 한글 인식에 문제가 없었다. 하지만 ‘대기업집단 현황' 자료를 받으려고 하니(https://www.data.go.kr/dataset/3043452/fileData.do), 아니나 다를까, 연도를 선택하는 버튼에서 연도를 선택할 수가 없었다(설마 internet explorer가 아니라서?). 혹시 저자가 자료를 받을 수 있게 해놨을까 싶어 출판사 페이지에 갔는데(http://www.hanbit.co.kr/src/10088) 아쉽게도 정말 예제 소스만 있고, 이런 자료는 없었다. (만약 저작권 문제가 없다면) 기왕에 자료 파일도 같이 올려줬다면 더 좋았을 거다.

174p json 자료(https://api.github.com/users/hadley/orgs) 받아서 data frame으로 보기

이외에도 서울시 open API 이용하기, MySQL 연동 방법, R에 자체적으로 포함된 데이터셋, 난수 생성 등을 통해 데이터 이용하는 방법 등을 설명한다. 각 부분마다 깊이있는 이야기를 하지는 않지만, 기본적인 이용 방법을 자세히 설명하고 있다.

그 다음 장에서는 좀 더 나아가 기본적인 통계를 설명하고, (나 같은 초보에게는) 고급 데이터 분석 기법들, decision tree, random forest 등의 기초적인 실행 방법과 다양한 시각화 기법, graph를 그리거나 R markdown 문서화 등의 방법들을 설명한다.

241p random forest
256p ggplot 예제
259p ggplot 예제
281p ggThemeAssist 예제
379p plotly 예제

총평

R 초보자들이 매력을 느끼기에 충분한 책이다. 개인적으로는 다른 R책을 볼 때보다 훨씬 강하게 R의 유용함을 느낄 수 있었다. 특히 시각화 부분에서는 python도 많이 편해지긴 했지만, 이래서 R 사용자들이 R이 아직 훨씬 앞섰다고 이야기한다는 걸 이해할 수 있었다. 조금씩 R에 친숙해져서 개인적인 데이터로 해보고 싶다는 생각이 들었다.

다만 앞서 정리했듯이 패키지 설치로 인해 중간 중간 맥이 끊기는 점(생각보다 설치에 시간이 많이 걸리기도 하고, 실패하는 경우도 있으므로)과, 실습 데이터를 사용하기가 불편했다는 점이 아쉬웠다. 이 부분만 보강하면 정말 R 초보자들에게 굉장히 매력적인 책이 될 거라고 생각한다.

결제하기
• 문화비 소득공제 가능
• 배송료 : 2,000원배송료란?

배송료 안내

  • 20,000원 이상 구매시 도서 배송 무료
  • 브론즈, 실버, 골드회원이 주문하신 경우 무료배송

무료배송 상품을 포함하여 주문하신 경우에는 구매금액에 관계없이 무료로 배송해 드립니다.

닫기

리뷰쓰기

닫기
* 도서명 :
그것이 R고 싶다
* 제목 :
* 별점평가
* 내용 :

* 리뷰 작성시 유의사항

글이나 이미지/사진 저작권 등 다른 사람의 권리를 침해하거나 명예를 훼손하는 게시물은 이용약관 및 관련법률에 의해 제재를 받을 수 있습니다.

1. 특히 뉴스/언론사 기사를 전문 또는 부분적으로 '허락없이' 갖고 와서는 안됩니다 (출처를 밝히는 경우에도 안됨).
2. 저작권자의 허락을 받지 않은 콘텐츠의 무단 사용은 저작권자의 권리를 침해하는 행위로, 이에 대한 법적 책임을 지게 될 수 있습니다.

오탈자 등록

닫기
* 도서명 :
그것이 R고 싶다
* 구분 :
* 상품 버전
종이책 PDF ePub
* 페이지 :
* 위치정보 :
* 내용 :

도서 인증

닫기
도서명*
그것이 R고 싶다
구입처*
구입일*
부가기호*
부가기호 안내

* 온라인 또는 오프라인 서점에서 구입한 도서를 인증하면 마일리지 500점을 드립니다.

* 도서인증은 일 3권, 월 10권, 년 50권으로 제한되며 절판도서, eBook 등 일부 도서는 인증이 제한됩니다.

* 구입하지 않고, 허위로 도서 인증을 한 것으로 판단되면 웹사이트 이용이 제한될 수 있습니다.

닫기

해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
장바구니로 이동하시겠습니까?

자료실