간편결제, 신용카드 청구할인
네이버페이 1%
(네이버페이 결제 시 적립)
NH(올원페이)카드 12% (25,350원)
(3만원 이상 결제/최대 1만원 할인)
북피니언 롯데카드 30% (20,160원)
(최대할인 3만원 / 3만원 이상 결제)
EBS 롯데카드 20% (23,040원)
(최대할인 3만원 / 3만원 이상 결제)
인터파크 NEW 우리V카드 10% (25,920원)
(최대할인 3만원 / 3만원 이상 결제)
인터파크 현대카드 7% (26,790원)
(최대할인 3만원 / 3만원 이상 결제)
Close

해들리 위컴의 Advanced R

원제 : Advanced R

2013년 9월 9일 이후 누적수치입니다.

판매지수 210
?
판매지수란?
사이트의 판매량에 기반하여 판매량 추이를 반영한 인터파크 도서에서의 독립적인 판매 지수입니다. 현재 가장 잘 팔리는 상품에 가중치를 두었기 때문에 실제 누적 판매량과는 다소 차이가 있을 수 있습니다. 판매량 외에도 다양한 가중치로 구성되어 최근의 이슈도서 확인시 유용할 수 있습니다. 해당 지수는 매일 갱신됩니다.
Close
공유하기
정가

32,000원

  • 28,800 (10%할인)

    1,600P (5%적립)

할인혜택
적립혜택자동적립
배송정보
주문수량
감소 증가
  • 이벤트/기획전

  • 연관도서

  • 사은품(3)

책소개

R 사용자를 위한 해들리 위컴의 선물!

이 책에는 독자들이 단기간에 수준 높은 R 프로그래머가 될 수 있도록 저자가 터득한 것들이 체계적으로 정리되어 있다. 저자가 겪었던 것과 비슷한 실수나 마지막까지 해결하지 못한 문제들이 반복되지 않도록 하는 데 많은 도움을 받을 것이다. 또한, 다양한 유형의 문제를 다룰 때 사용할 수 있는 유용한 도구와 기법 및 관용적인 사용법 등을 배울 수 있으며, 이 과정에서 R이 지닌 단점에도 불구하고 R이 데이터 분석과 통계학에 적합하게 설계된, 얼마나 우아하고 아름다운 언어인지를 깨닫게 될 것이다. 이 책을 통해 다양한 환경에서 사용될 수 있는 고품질의 코드를 생산하는 능력을 비롯한 고급 R 프로그래머가 알아야 할 다양한 기법을 배워 보자.

출판사 서평

학습을 위한 최고의 R 프로그래밍 기법 제시!
R 언어에 정통하고 경험 많은 저자가 알려주는 고급 R 프로그래밍!
R 사용자를 위한 해들리 위컴의 선물!


[해들리 위컴의 Advance R]은 R 프로그래밍 중 발생하는 다양한 문제를 해결할 수 있는 유용한 도구와 기술을 소개함으로써, 이제까지는 처리하지 못했던 문제나 실수를 해결하는 데 많은 도움이 될 것이다. 저자는 10여 년의 R 프로그래밍 경험을 바탕으로 R의 근원에 있는 우아함과 아름다움 그리고 유연함을 잘 묘사하였다.

이 책으로 다양한 환경에서 사용할 수 있는 수준 높은 코드를 작성하는 데 필요한 역량을 키울 수 있다. 아울러 이 책을 통해 R 사용자는 R 프로그래머가 되는 데 도움을 받을 수 있고, 기존의 프로그래머도 R의 특별한 점을 파악할 수 있다. 반면 다른 언어를 사용하는 프로그래머는 R에 대해 더 자세하게 알 수 있으며, R이 동작하는 방식을 이해할 수 있다. 또한, 중급의 R 프로그래머는 R에 대한 보다 깊은 이해를 통해 다양한 문제를 해결할 수 있는 새로운 전략을 학습할 수 있다.

이 책으로 학습할 수 있는 주요 내용
- 표준적인 데이터 유형과 함수들을 포함한 R의 근간
- 넓은 범위의 문제 해결을 위한 유용한 프레임워크로서의 함수형 프로그래밍
- 메타프로그래밍의 장점과 단점
- 메모리 효율을 높이기 위한 빠른 속도의 코드를 작성하는 방법

추천사

“해들리 위컴은 관련 분야에서 가장 권위 있는 사람 중 한 명이고 전 세계의 R 커뮤니티를 통틀어 가장 많이 알려지고 능력을 인정받는 인물이다. 이러한 점은 이 책의 가장 강력한 강점이자 이 책이 출간될 만한 주된 이유다. 이와 같은 주제를 다루는 책들이 이미 많으나 이 책만큼 깊이 있고, 기술적으로 정확하며, 권위가 높은 책은 극히 드물 것이다.”
- 빌 베나블스(Bill Venables), CSIRO

목차

CHAPTER 1 서론 1
1.1 이 책을 읽어야 하는 독자 3
1.2 이 책에서 얻을 수 있는 것 4
1.3 메타 기법 5
1.4 읽어 볼 만한 자료 5
1.5 도움 얻기 6
1.6 감사의 말 7
1.7 편집 규칙 8
1.8 출간 방법 9

PART I 기본 11
CHAPTER 2 데이터 구조 13
2.1 벡터 15
2.2 속성 20
2.3 매트릭스와 어레이 26
2.4 데이터 프레임 29
2.5 퀴즈 풀이 34

CHAPTER 3 서브세팅 35
3.1 데이터 유형 36
3.2 서브세팅 연산자 43
3.3 서브세팅과 할당 48
3.4 응용 50
3.5 퀴즈 풀이 59

CHAPTER 4 어휘 60
4.1 기초 60
4.2 공통적인 데이터 구조 62
4.3 통계학 63
4.4 R 작업 64
4.5 I/O 64

CHAPTER 5 스타일 가이드 66
5.1 표기법과 이름 짓기 67
5.2 문법 68
5.2.5 할당 71
5.3 조직화 71

CHAPTER 6 함수 72
6.1 함수 구성 요소 74
6.2 렉시칼 스코핑 76
6.3 모든 연산은 함수 호출 82
6.4 함수 인자 85
6.5 특수한 호출 95
6.6 반환값 99
6.7 퀴즈 풀이 104

CHAPTER 7 객체지향 필드 가이드 105
7.1 베이스 타입 107
7.2 S3 109
7.3 S4 118
7.4 RC 124
7.5 시스템 선택 128
7.6 퀴즈 풀이 129

CHAPTER 8 환경 130
8.1 환경 기초 131
8.2 환경 위에서 재귀 137
8.3 함수 환경 140
8.4 값에 이름을 바인딩하기 148
8.5 명시적 환경 152
8.6 퀴즈 풀이 154

CHAPTER 9 디버깅, 상황 처리, 그리고 방어적 프로그래밍 155
9.1 디버깅 기법 157
9.2 디버깅 도구 159
9.3 상황 처리 166
9.4 방어적 프로그래밍 176
9.5 퀴즈 풀이 178

PART II 함수형 프로그래밍 179
CHAPTER 10 함수형 프로그래밍 181

10.1 동기 182
10.2 익명 함수 187
10.3 클로저 190
10.4 함수로 된 리스트 196
10.5 사례 연구: 수치 적분 200

CHAPTER 11 기능 205
11.1 나의 첫 번째 기능: lapply() 207
11.2 for 루프 기능들: lapply( )의 친구들 211
11.3 매트릭스와 데이터 프레임의 조작 221
11.4 리스트 조작 226
11.5 수학 기능 230
11.6 현재 상태로 남아 있어야 하는 반복 232
11.7 함수군 235

CHAPTER 12 함수 연산자 242
12.1 행동적 FO 244
12.2 출력 FO 254
12.3 입력 FO 258
12.4 결합 FO 262

PART III 언어에서의 컴퓨팅 267
CHAPTER 13 비표준적 평가 269

13.1 표현식 파악 270
13.2 서브세트에서 비표준적 평가 273
13.3 이슈 스코핑 278
13.4 다른 함수에서 호출 280
13.5 대체 284
13.6 비표준적 평가의 단점 289

CHAPTER 14 표현식 292
14.1 표현식의 구조 293
14.2 이름 298
14.3 호출 300
14.4 현재 호출 파악하기 305
14.5 리스트쌍 309
14.6 파싱과 디파싱 311
14.7 재귀 함수로 AST를 따르기 314

CHAPTER 15 도메인 특화 언어 324
15.1 HTML 325
15.2 LaTeX 334

PART IV 성능 343
CHAPTER 16 성능 345

16.1 R은 왜 느린가? 346
16.2 마이크로벤치마킹 347
16.3 언어 성능 349
16.4 구현 성능 354
16.5 대체적 R 구현 358

CHAPTER 17 코드 최적화 361
17.1 성능 측정 363
17.2 성능 개선하기 367
17.3 코드 조직화 368
17.4 이미 누군가 그 문제를 해결하지는 않았는가? 370
17.5 가능한 한 적게 작업하라 371
17.6 벡터화 378
17.7 사본 회피 381
17.8 바이트 코드 컴파일레이션 382
17.9 사례 연구: t-검정 383
17.10 병렬화 386
17.11 다른 기법들 388

CHAPTER 18 메모리 389
18.1 객체 크기 390
18.2 메모리 사용과 가비지 컬렉션 395
18.3 lineprof를 이용한 메모리 프로파일링 398
18.4 제자리에서 수정 402

CHAPTER 19 Rcpp를 이용한 고성능 함수 408
19.1 C++ 시작하기 410
19.2 속성 및 다른 클래스들 420
19.3 결측값 423
19.4 Rcpp 설탕 427
19.5 STL 430
19.6 사례 연구 437
19.7 패키지에 Rcpp 사용하기 441
19.8 더 공부하기 442
19.9 감사의 글 444

CHAPTER 20 R의 C 인터페이스 445
20.1 R에서 C 함수 호출 447
20.2 C 데이터 구조 448
20.3 벡터의 생성과 수정 450
20.4 리스트쌍 457
20.5 입력 유효성 검증 460
20.6 함수에 대한 C 소스 코드 찾기 462

찾아보기

본문중에서

R은 아직 상대적으로 젊은 언어이므로 이해를 돕기 위한 자료들이 지속적으로 더해지고 있다. R을 이해하기 위해 노력한 개인적인 경험에 비춰볼 때 다른 프로그래밍 언어와 관련된 자료를 이용하는 것이 특히 도움이 되었다. R은 함수형(functional)과 객체지향형(OO; Object Oriented) 프로그래밍 언어 모두의 다양한 측면을 지닌다. 이러한 개념들이 R에서 표현되는 방법을 학습하는 것은 다른 프로그래밍 언어에 대한 자신의 기존 지식을 증대하는 데 도움을 주고, 스스로 개선할 수 있는 영역을 식별하는 데도 도움을 줄 수 있다.
(/ p.5)

렉시칼 스코핑은 함수가 호출됐을 때가 아니라 생성되었을 때 중첩되는(nested) 방식에 따라 심볼 값을 찾는다. 렉시칼 스코핑을 사용하면 변수의 값을 어디에서 찾아야 할지 알아내기 위해 함수를 호출하는 방법을 알아야 할 필요가 없다. 단지 함수의 정의만 살펴보면 된다.
(/ p.77)

주류 OO 언어로 프로그래밍을 해왔다면 RC는 매우 자연스러워 보일 것이다. 그러나 이것은 가변 상태를 통한 파급 효과를 발생시킬 수 있기 때문에 이해하기가 더 어렵다. 예를 들어, 일반적으로 R에서 f(a, b)를 호출할 때 a와 b가 수정되지 않을 것을 가정할 수 있다. 그러나 이 둘이 RC 객체라면 즉시 수정될 수 있다. 일반적으로 RC 객체를 사용할 때 가능한 파급 효과를 최소화하여 가변 상태가 반드시 필요한 경우에만 그것을 사용하기 바란다. 대부분의 함수는 기능적이어야 하고, 파급 효과에서 자유로워야 한다. 이것은 코드를 이해하기 쉽게 하여, 다른 R 상용자가 그 코드를 수월하게 이해할 수 있도록 한다.
(/ p.129)

sapply( )와 vapply( )는 출력을 단순하게 원자 벡터로 만들어 내는 점을 제외하면 lapply( )와 매우 유사하다. sapply( )가 예상되는 반면, vapply( )는 출력 유형을 지정하기 위한 추가적 인자를 가진다. sapply( )는 타이핑을 줄이기 때문에 인터렉티브하게 사용하는 경우가 가장 좋다. 그러나 자신의 함수 내에서 사용할 때 옳지 않은 입력 유형을 제공하면 이상한 오류를 보게 될 것이다. vapply( )는 더 장황하지만, 보다 정보가 풍부한 오류 메시지를 제공하고 절대로 아무 표시 없이 실패하지 않는다. 다른 함수 안에 사용하는 것에는 더 잘 맞는다.
(/ p.212)

R의 성능에 대해 이해하기 위해 언어로서와 그 언어의 구현으로서 R에 대해 생각해 보는 것이 도움이 된다. R 언어는 추상적이다. R 언어는 R 코드가 의미하는 바와 동작하는 방법을 정의한다. 그 구현은 견고하다. 즉, R 코드를 읽어 결과를 계산한다. 대부분의 유명한 구현은 r-project.org(http://r-project.org)에 의한 것이다. GNU R 구현과 이 장의 뒷부분에서 논할 다른 구현들 및 R 언어를 구분할 것이다.
(/ p.346)

맵(map)은 세트와 유사하지만, 존재 또는 부재를 저장하는 대신, 추가 데이터를 저장할 수 있다. 이것은 값을 찾아야하는 table( ) 또는 match( ) 같은 함수에 유용하다. 세트와 마찬가지로, 순서 있는 버전(std::map)과 순서가 없는 버전(std::unordered_map)이 있다. 맵은 값과 키를 갖고 있기 때문에 맵을 초기화할 때 map[double, int], unordered_map[int, double] 등 두 타입을 모두 지정해야 한다. 다음 사례는 map을 사용하여 수치형 벡터에 대해 table( )을 구현하는 방법을 보여 준다.
(/ p.436)

관련이미지

저자소개

해들리 위컴(Hadley Wickham) [저] 신작알림 SMS신청 작가DB보기
생년월일 -
출생지 -
출간도서 2종
판매수 53권

RStudio의 수석 과학자이자 R 재단의 핵심 멤버다. 그는 데이터 과학을 더 쉽게, 더 빠르게, 더 재미있게 하는 도구를 만들어 왔다. 데이터 과학(ggplot2, dplyr, tidyr), 데이터 수집(readr, readxl, haven), 원칙에 입각한 소프트웨어 개발(roxygen2, testthat, devtools) 등이 그것들이다. 또한, 그는 데이터 과학 분야에서 R의 사용을 장려하는 작가이자 교육자인 동시에 영향력 높은 인물이기도 하다.

저자의 다른책

전체보기
생년월일 -
출생지 -
출간도서 0종
판매수 0권

대학에서 경영학 박사 과정을 수료하였다. 회계학에 빅데이터와 데이터 과학을 접목하기 위한 노력하고 있으며, R 사용자의 저변 확대를 위해 한국R사용자커뮤니티(R Korea)를 운영하고 있다. 또한, R 시스템 메시지와 R 재단의 공식 문서를 번역하는 R 한글화 팀(R-ihelp)과 자유 소프트웨어 운동을 위한 GNU Korea의 멤버로도 활동하고 있다. 최근에는 오픈 사이언스에 관심을 갖고 W3 재단의 Open Science Community를 개설하여 의장으로서 커뮤니티 활성화를 모색하고 있다.

이 책과 내용이 비슷한 책 ? 내용 유사도란? 이 도서가 가진 내용을 분석하여 기준 도서와 얼마나 많이 유사한 콘텐츠를 많이 가지고 있는가에 대한 비율입니다.

    리뷰

    10.0 (총 0건)

    기대평

    작성시 유의사항

    평점
    0/200자
    등록하기

    기대평

    0.0

    교환/환불

    교환/환불 방법

    ‘마이페이지 > 취소/반품/교환/환불’ 에서 신청함, 1:1 문의 게시판 또는 고객센터(1577-2555) 이용 가능

    교환/환불 가능 기간

    고객변심은 출고완료 다음날부터 14일 까지만 교환/환불이 가능함

    교환/환불 비용

    고객변심 또는 구매착오의 경우에만 2,500원 택배비를 고객님이 부담함

    교환/환불 불가사유

    반품접수 없이 반송하거나, 우편으로 보낼 경우 상품 확인이 어려워 환불이 불가할 수 있음
    배송된 상품의 분실, 상품포장이 훼손된 경우, 비닐랩핑된 상품의 비닐 개봉시 교환/반품이 불가능함

    소비자 피해보상

    소비자 피해보상의 분쟁처리 등에 관한 사항은 소비자분쟁해결기준(공정거래위원회 고시)에 따라 비해 보상 받을 수 있음
    교환/반품/보증조건 및 품질보증 기준은 소비자기본법에 따른 소비자 분쟁 해결 기준에 따라 피해를 보상 받을 수 있음

    기타

    도매상 및 제작사 사정에 따라 품절/절판 등의 사유로 주문이 취소될 수 있음(이 경우 인터파크도서에서 고객님께 별도로 연락하여 고지함)

    배송안내

    • 인터파크 도서 상품은 택배로 배송되며, 출고완료 1~2일내 상품을 받아 보실 수 있습니다

    • 출고가능 시간이 서로 다른 상품을 함께 주문할 경우 출고가능 시간이 가장 긴 상품을 기준으로 배송됩니다.

    • 군부대, 교도소 등 특정기관은 우체국 택배만 배송가능하여, 인터파크 외 타업체 배송상품인 경우 발송되지 않을 수 있습니다.

    • 배송비

    도서(중고도서 포함) 구매

    2,000원 (1만원이상 구매 시 무료배송)

    음반/DVD/잡지/만화 구매

    2,000원 (2만원이상 구매 시 무료배송)

    도서와 음반/DVD/잡지/만화/
    중고직배송상품을 함께 구매

    2,000원 (1만원이상 구매 시 무료배송)

    업체직접배송상품 구매

    업체별 상이한 배송비 적용