본문내용 바로가기
MD의선택 무료배송 이벤트 소득공제

효율적인 R 프로그래밍 보다 현명한 프로그래밍을 위한 실용적인 가이드

로빈 러브 레이스 , 콜린 길렙시 지음 | R Korea 번역팀 옮김 | 느린생각 | 2018년 06월 05일 출간
클로버 리뷰쓰기
  • 정가 : 32,000원
    판매가 : 28,800 [10%↓ 3,200원 할인]
  • 통합포인트 :
    [기본적립] 1,600원 적립 [5% 적립] [추가적립] 5만원 이상 구매 시 2천원 추가적립 안내 [회원혜택] 실버등급 이상, 3만원 이상 구매 시 2~4% 추가적립 안내
  • 추가혜택 : 포인트 안내 도서소득공제 안내 추가혜택 더보기
  • 배송비 : 무료 배송비 안내
  • 배송일정 : 서울특별시 종로구 세종대로 기준 지역변경
    09월 28일 출고 예정 배송일정 안내
  • 바로드림 : 인터넷으로 주문하고 매장에서 직접 수령 안내 바로드림 혜택
    휴일에는 바로드림 픽업으로 더 빨리 받아 보세요. 바로드림 혜택받고 이용하기

이 책의 이벤트 해외주문/바로드림/제휴사주문/업체배송건의 경우 1+1 증정상품이 발송되지 않습니다.

  • 새로 출간된 O'Reilly 번역서를 확인해보세요!
    2019.06.14 ~ 2020.12.31
  • 개발자로 입문하기: 일단 이것부터 읽어보자!
    2019.05.31 ~ 2020.12.31
  • MANNING, O'REILLY, PACKT, WILE..
    2016.03.07 ~ 2020.12.31
상품상세정보
ISBN 9791187139133(1187139130)
쪽수 320쪽
크기 178 * 235 * 12 mm /506g 판형알림
원서명/저자명 Efficient R Programming/Colin Gillespie

책소개

이 책이 속한 분야

효율적으로 프로그래밍한다는 것은 기존보다 조금 더 나아지는 것 그 이상으로 의미가 있다. 효율적인 작은 코드 하나가 수 십 배의 연산 속도를 향상시킬 수 있고 작은 효율적인 습관 하나가 팀 동료와의 협업을 쉽게 만들 수 있다.
이 책은 효율적인 코드 작성뿐만 아니라 개발자의 습관, 소통 방법까지도 효율적으로 수행 할 수 있는 방법을 제안한다. 또한, 효율적인 설정, 효율적인 프로그래밍, 효율적인 작업 흐름, 효율적인 입출력, 효율적으로 데이터 다루기, 최적화, 하드웨어 등 폭넓게 내용을 다룬다.
R의 효율성과 관련된 모든 것이 집대성 되어 있어 잠깐 유행하는 책이 아닌 오랜시간 많은 사람에게 큰 도움이 되는 책이 될 것이다.
R은 특히 효율적인 코드와 그렇지 않은 코드와의 연산 속도가 큰 언어이다. 다른 언어에서 찾아볼 수 없는 R만의 독특한 개념이 많기 때문이다. 이런 부분을 정확히 이해할 때 R을 온전히 이해하고 효율적인 코딩이 가능하다. 저자는 이런 부분을 놓치지 않고 독자를 올바른 길로 안내한다.
단순히 Tip을 알려주는 책이 아닌 핵심을 이해하고 바뀌도록 안내한다. 독자는 이 책을 읽음으로써 분명 큰 변화를 느낄 것이다. 그리고 프로젝트 때마다 한 자리 차지하는 든든한 친구가 될 것이다.

저자소개

저자 : 로빈 러브 레이스

저자 로빈 러브레이스(Robin Lovelace)는 리즈 교통 연구소(Leeds Institute for Transport Studies, ITS)의 연구원이자 리즈 데이터 분석 연구소(Leeds Institute for Data Analytics, LIDA)의 연구원이다.
로빈은 다년간 학술연구에 R을 활용해 왔으며 모든 수준의 R 강의 경험이 있고, 그 횟수도 수없이 많다. 그는 R을 활용한 공간정보 시각화 개요와 R을 활용한 공간 미세 시뮬레이션 (Lovelace and Dumont 2016)을 포함하여 유명한 R 자료를 여럿 만들었다. 해당 자료에 있는 여러 기술은 범국가적 실시간 온라인 지도 애플리케이션인 Propensity to Cycle Tool, stplanr패키지를 포함하여 여러 세계적인 프로젝트에 녹아 들어있다.

저자 : 콜린 길렙시

저자 콜린 길렙시(Colin Gillespie)는 영국 뉴캐슬 대학교의 수석 강사(부교수)이다. 그의 관심 연구주제는 고성능 통계처리와 베이지안 통계이다.
그는 Jumping Rivers의 정직원이며 컨설턴트로 활동하고 있다. 그리고 2005년부터 초급 수준부터 고급 수준까지 다양한 수준의 R 프로그래밍을 가르쳐 왔다.

역자 : R Korea 번역팀

목차

저자 서문
역자 서문

01. 개요
사전 준비
1.1 본 서적의 대상 독자 및 사용 방법
1.2 효율성이란 무엇인가?
1.3 효율적인 R 프로그래밍이란 무엇인가?
1.4 왜 효율성인가?
1.5 효율성을 위한 상호 호환 기술
1.5.1 직접 타이핑하기
1.5.2 일관된 스타일과 코드 형식
1.6 벤치마킹과 프로파일링
1.6.1 벤치마킹
1.6.2 벤치마킹 예제
1.6.3 프로파일링
1.7 각종 자료
1.7.1 R 패키지
1.7.2 온라인 버전

02. 효율적인 컴퓨터를 위한 설정
사전 준비
2.1 효율적인 R 설정 핵심 팁 다섯 가지
2.2 운영체제
2.2.1 운영체제와 자원 모니터링
2.3 R 버전
2.3.1 R 설치
2.3.2 R 업데이트
2.3.3 R 패키지 설치
2.3.4 외부 종속이 있는 R 패키지 설치
2.3.5 R 패키지 업데이트
2.4 R 시동
2.4.1 R 시동 인자
2.4.2 R 시동 파일 개요
2.4.3 시동 파일 위치
2.4.4 .Rprofile 파일
2.4.5 .Rprofile 파일 사용 예
2.4.5.1 설정 관리
2.4.5.2 CRAN 미러 지정
2.4.5.3 fortunes 패키지
2.4.5.4 유용한 함수
2.4.5.5 .Rprofile를 이용한 숨겨진 환경 생성
2.4.6 .Renviron 파일
2.4.6.1 .Renviron 파일 사용 예
2.5 RStudio
2.5.1 RStudio의 설치와 업데이트
2.5.2 작업 창 배치
2.5.3 RStudio 설정
2.5.4 자동 완성
2.5.5 키보드 단축키
2.5.6 객체 표시 및 표 출력
2.5.7 프로젝트 관리
2.6 BLAS와 기타 R 인터프리터
2.6.1 BLAS을 사용한 성능 개선 확인
2.6.2 다른 인터프리터
2.6.3 유용한 BLAS/벤치마크 자료

03. 효율적인 프로그래밍
사전준비
3.1 효율적인 프로그래밍을 위한 핵심 팁 다섯 가지
3.2 일반적인 조언
3.2.1 메모리 할당
3.2.2 코드의 벡터화
3.3 사용자와 소통하기
3.3.1 치명적인 오류: stop()
3.3.2 경고: warning()
3.3.3 정보성 출력 : message()와 cat()
3.3.4 보이지 않는 반환값
3.4 팩터
3.4.1 변수에 내재 된 순서가 있는 경우
3.4.2 범주 데이터가 고정된 경우
3.5 apply 계열 함수
3.5.1 예제: 영화 데이터
3.5.2 입출력 자료형의 일관성
그 외 참고자료
3.6 변수 캐싱
3.6.1 함수 클로저
3.7 바이트 컴파일러
3.7.1 예제 : 평균 함수
3.7.2 코드 컴파일

04. 효율적인 작업 흐름
사전 준비
4.1 효율적인 작업 흐름을 위한 핵심 팁 다섯 가지
4.2 프로젝트 계획 분류 체계
4.3 프로젝트 계획 및 관리
4.3.1 작업 분할
4.3.2 SMART 한 작업 흐름 만들기
4.3.3 R을 활용한 계획 시각화
4.4 패키지 선택
4.4.1 필요한 R 패키지 찾기
4.4.2 패키지 선택 방법
4.5 출판
4.5.1 R 마크다운을 이용한 동적 문서
4.5.2 R 패키지

05. 효율적인 입출력
사전 준비
5.1 효율적인 데이터 입출력을 위한 핵심 팁 다섯 가지
5.2 rio 패키지로 다양한 데이터 가져오기
5.3 텍스트 파일 형식
5.3.1 fread() 함수와 read_csv() 함수의 차이점
5.3.2 매우 큰 텍스트 파일의 전처리
5.4 바이너리 파일 형식
5.4.1 내장 바이너리 형식: Rdata? Rds?
5.4.2 feather 파일 형식
5.4.3 바이너리 파일 형식 벤치마크
5.4.4 프로토콜 버퍼
5.5 인터넷에서 데이터 가져오기
5.6 패키지에 포함된 데이터 사용하기

06. 효율적인 데이터 다듬기
사전 준비
6.1 효율적인 데이터 다듬기를 위한 핵심 팁 다섯 가지
6.2 tibble을 이용한 효율적인 자료구조
6.3 tidyr과 정규표현식을 이용한 데이터 정돈
6.3.1 gather()를 이용한 넓은 표를 긴 형태로 변환
6.3.2 separate()를 이용한 결합 변수 분리
6.3.3 기타 tidyr 함수
6.3.4 정규 표현식
6.4 dplyr을 이용한 효율적인 데이터 처리
6.4.1 열 이름 변경
6.4.2 열의 클래스 변경
6.4.3 행 필터링
6.4.4 연산자 연계
6.4.5 데이터 요약
6.4.6 비표준 평가
6.5 데이터 세트 결합
6.6 데이터베이스를 이용한 작업
6.6.1 데이터베이스와 dplyr
6.7 data.table을 이용한 데이터 처리

07. 효율적인 최적화
사전 준비
7.1 효율적인 성능 향상을 위한 핵심 팁 다섯 가지
7.2 코드 프로파일링
7.2.1 profvis로 시작하기
7.2.2 예제: 모노폴리 시뮬레이션
7.3 효율적인 R의 기본 함수
7.3.1 if()와 ifelse()
7.3.2 정렬 및 순서
7.3.3 내림차순 정렬
7.3.4 TRUE 색인
7.3.5 팩터형의 수치형 변환
7.3.6 논리형 AND와 OR
7.3.7 행/열 연산
7.3.8 is.na()와 anyNA()
7.3.9 매트릭스
7.3.10 정수형
7.3.11 희소 행렬
7.4 예제 : move_square() 함수 최적화
7.5 병렬 처리
7.5.1 apply 함수의 병렬 버전
7.5.2 예제: 뱀과 사다리 게임(Snakes and Ladders)
7.5.3 종료 함수 및 주의점
7.5.4 Linux와 OS X 환경의 병렬 코드
7.6 Rcpp
7.6.1 간단한 C++ 함수
7.6.2 cppFunction() 함수
7.6.3 C++ 데이터형
7.6.4 sourceCpp() 함수
7.6.5 벡터와 반복문
7.6.6 행렬
7.6.7 C++의 달콤한 문법
7.6.8 Rcpp 참고 자료

08. 효율적인 하드웨어
사전 준비
8.1 효율적인 하드웨어를 위한 핵심 팁 다섯 가지
8.2 배경 지식: 바이트란 무엇인가?
8.3 랜덤 엑세스 메모리: RAM
8.4 하드디스크: HDD vs SSD
8.5 운영 체제: 32비트/64비트
8.6 중앙 처리 장치
8.7 클라우드 컴퓨팅
8.7.1 아마존 EC2

09. 효율적인 협업
사전 준비
9.1 효율적인 협업을 위한 핵심 팁 다섯 가지
9.2 코딩 스타일
9.2.1 RStudio를 사용한 코드 재구성
9.2.2 파일명
9.2.3 패키지 불러오기
9.2.4 주석 달기
9.2.5 객체명
9.2.6 예제 패키지
9.2.7 할당
9.2.8 공백
9.2.9 들여쓰기
9.2.10 중괄호
9.3 버전 관리
9.3.1 Commit
9.3.2 RStudio에서 Git 통합
9.3.3 깃허브
9.3.4 Branch, Fork, Pull, Clone
9.4 코드 검토

10. 효율적인 학습
사전 준비
10.1 효율적인 학습을 위한 핵심 팁 다섯 가지
10.2 R 도움말 사용하기
10.2.1 주제별 R 탐색
10.2.2 비네트 탐색 및 사용
10.2.3 함수의 도움말 페이지
10.2.4 R 소스 코드 읽기
10.2.5 Swirl
10.3 온라인 자료
10.3.1 스택오버플로우
10.3.2 메일링 리스트와 그룹
10.4 질문하기
10.4.1 데이터 세트의 최소화
10.4.2 예제의 최소화
10.5 심화 학습
10.6 지식의 확산

소스 코드 빌드
의존 패키지
참고자료

출판사 서평

이 책은 참 올바른 방법으로 출판된 책이다. R관련 한 커뮤니티에서 한 유저가 책에 대한 번역을 제안했고 여러 사람이 모여 공동으로 번역을 했다. 좋은 책을 한국 독자에게 소개하고 싶은 그들의 마음이 고스란히 책에 담겼다.
커뮤니티가 주도하여 만든 책은 살아있는 생물 같다. 서로 묻고 답하며 고쳐지고 발전하여 여러 사람을 이롭게 만들 것이다. 이것이 지식의 올바른 근본이고 목표이지 싶다.
이 좋은 뜻을 이루는데 여러 사람의 노고가 있었다. 이 노고는 오랫동안 데이터를 다루는 모든 사람에게 길라잡이가 빛이 비칠 것이다.

Klover 리뷰 (0)

북로그 리뷰 (0) 쓰러가기

도서 구매 후 리뷰를 작성하시면
결제 90일 이내 300원, 발송 후 5일 이내 400원, 이 상품의 첫 리뷰 500원의 포인트를 드립니다.

포인트는 작성 후 다음 날 적립되며, 도서 발송 전 작성 시에는 발송 후 익일에 적립됩니다.
북로그 리뷰는 본인인증을 거친 회원만 작성 가능합니다.
(※ 외서/eBook/음반/DVD/GIFT 및 잡지 상품 제외) 안내
  • 해당도서의 리뷰가 없습니다.

문장수집 (0) 문장수집 쓰기 나의 독서기록 보기
※구매도서의 문장수집을 기록하면 통합포인트 적립 안내

교환/반품/품절안내

※ 상품 설명에 반품/교환 관련한 안내가 있는 경우 그 내용을 우선으로 합니다. (업체 사정에 따라 달라질 수 있습니다.)

교환/반품/품절안내
반품/교환방법 마이룸 > 주문관리 > 주문/배송내역 > 주문조회 > 반품/교환신청 ,
[1:1상담>반품/교환/환불] 또는 고객센터 (1544-1900)

※ 오픈마켓, 해외배송주문, 기프트 주문시 [1:1상담>반품/교환/환불]
    또는 고객센터 (1544-1900)
반품/교환가능 기간 변심반품의 경우 수령 후 7일 이내,
상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내
반품/교환비용 변심 혹은 구매착오로 인한 반품/교환은 반송료 고객 부담
반품/교환 불가 사유
  • 소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
    (단지 확인을 위한 포장 훼손은 제외)
  • 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우
    예) 화장품, 식품, 가전제품(악세서리 포함) 등
  • 복제가 가능한 상품 등의 포장을 훼손한 경우
    예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집
  • 소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우 ((1)해외주문도서)
  • 디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우
  • 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
  • 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에
    해당되는 경우
(1) 해외주문도서 : 이용자의 요청에 의한 개인주문상품으로 단순변심 및 착오로 인한 취소/교환/반품 시 ‘해외주문 반품/취소 수수료’ 고객 부담 (해외주문 반품/취소 수수료 : ①서양도서-판매정가의 12%, ②일본도서-판매정가의 7%를 적용)
상품 품절 공급사(출판사) 재고 사정에 의해 품절/지연될 수 있으며, 품절 시 관련 사항에 대해서는
이메일과 문자로 안내드리겠습니다.
소비자 피해보상
환불지연에 따른 배상
  • 상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은
    소비자분쟁해결 기준 (공정거래위원회 고시)에 준하여 처리됨
  • 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의
    소비자 보호에 관한 법률에 따라 처리함

이 책의 원서

안내

바로가기

  • 우측 확장형 배너 2
  • 우측 확장형 배너 2

최근 본 상품