빅데이터 시대의 필수 분석 도구 R과 다양한 시각화 기법을 마스터한다 세트
- 원서명Visualize This: The FlowingData Guide to Design, Visualization, and Statistics , The Art of R Programming: A Tour of Statistical Software Design (ISBN 9780470944882)
- 지은이네이선 야우, 노만 매트로프
- 옮긴이송용근, 권정민
- ISBN : 9788960773387
- 59,000원
- 2012년 08월 30일 펴냄 (절판)
- 페이퍼백 | 928쪽 | 188*250mm
- 시리즈 : 클라우드 컴퓨팅
판매처
- 현재 이 도서는 구매할 수 없습니다.
책 소개
[ 세트 구성: 전2권 ]
1) 『Visualize This 비주얼라이즈 디스: 빅데이터 시대의 데이터 시각화+인포그래픽 기법』
2) 『빅데이터 분석 도구 R 프로그래밍: 데이터 고급 분석과 통계 프로그래밍을 위한』
『Visualize This 비주얼라이즈 디스』 소개
"그래프가 아니다. 데이터 그래픽이다!" 화려한 스프레드시트 프로그램들은 마우스 클릭 몇 번으로 눈부신 그래프를 그릴 수 있다고 선전하지만, 그게 다는 아니다. 데이터는 실생활의 반영이며, 우리 삶의 이야기를 담고 있는 지표다. 이 책은 데이터 그래픽을 기본 개념부터 응용 방법까지, 초심자의 기준에서 단계적으로 설명한다. 별다른 지식이 없어도 누구나 쉽게 빅데이터를 시각적으로 표현하는 방법을 배울 수 있다. 막대/선 그래프나 파이 차트 같은 단순한 그래프는 물론, 시계열 그래픽, 지도 그래픽, 트리맵과 인터랙티브 차트까지 그릴 수 있게 될 것이다.
이 책에서 다루는 내용
■ 의외성을 주는 시각적인 데이터 표현
■ 데이터의 스토리텔링: 이야기 찾기
■ 각기 다른 데이터와 효과적인 표현 형식
■ 다양한 시각화 도구의 비교 실험
■ 데이터의 트렌드/패턴 파악과 그에 따른 적절한 차트 제시
■ 시각화의 목표 설정
『빅데이터 분석 도구 R 프로그래밍』 소개
통계 프로그래밍 언어인 R의 활용과 R을 사용한 소프트웨어 개발, R의 언어적 측면까지 쉽게 배울 수 있는 R에 관한 최고의 책. 통계학을 잘 몰라도 프로그래밍에 관한 초보적인 지식만 있다면 쉽게 익힐 수 있다. 이 책에서는 R에서 사용하는 기본적인 데이터 구조부터 함수형 프로그래밍과 객체지향 프로그래밍 개념, 수학적 시뮬레이션, 그리고 복잡한 데이터를 단순하고 유용한 형태로 재배치하는 R의 활용법 등에 대한 내용까지 다양하게 다룬다.
이 책에서 다루는 내용
■ 복잡한 데이터 세트와 함수를 시각화하는 예술적인 그래프 만들기
■ 병렬 R과 벡터화를 통한 좀더 효율적인 코드 작성
■ 코드 속도 및 기능 향상을 위한 R과 C/C++, 파이썬과의 인터페이스
■ 텍스트 분석, 이미지 수정 등을 위한 패키지 찾기
■ 개선된 디버깅 기술을 활용해 귀찮은 버그 찾아 고치기
1) 『Visualize This 비주얼라이즈 디스: 빅데이터 시대의 데이터 시각화+인포그래픽 기법』
2) 『빅데이터 분석 도구 R 프로그래밍: 데이터 고급 분석과 통계 프로그래밍을 위한』
『Visualize This 비주얼라이즈 디스』 소개
"그래프가 아니다. 데이터 그래픽이다!" 화려한 스프레드시트 프로그램들은 마우스 클릭 몇 번으로 눈부신 그래프를 그릴 수 있다고 선전하지만, 그게 다는 아니다. 데이터는 실생활의 반영이며, 우리 삶의 이야기를 담고 있는 지표다. 이 책은 데이터 그래픽을 기본 개념부터 응용 방법까지, 초심자의 기준에서 단계적으로 설명한다. 별다른 지식이 없어도 누구나 쉽게 빅데이터를 시각적으로 표현하는 방법을 배울 수 있다. 막대/선 그래프나 파이 차트 같은 단순한 그래프는 물론, 시계열 그래픽, 지도 그래픽, 트리맵과 인터랙티브 차트까지 그릴 수 있게 될 것이다.
이 책에서 다루는 내용
■ 의외성을 주는 시각적인 데이터 표현
■ 데이터의 스토리텔링: 이야기 찾기
■ 각기 다른 데이터와 효과적인 표현 형식
■ 다양한 시각화 도구의 비교 실험
■ 데이터의 트렌드/패턴 파악과 그에 따른 적절한 차트 제시
■ 시각화의 목표 설정
『빅데이터 분석 도구 R 프로그래밍』 소개
통계 프로그래밍 언어인 R의 활용과 R을 사용한 소프트웨어 개발, R의 언어적 측면까지 쉽게 배울 수 있는 R에 관한 최고의 책. 통계학을 잘 몰라도 프로그래밍에 관한 초보적인 지식만 있다면 쉽게 익힐 수 있다. 이 책에서는 R에서 사용하는 기본적인 데이터 구조부터 함수형 프로그래밍과 객체지향 프로그래밍 개념, 수학적 시뮬레이션, 그리고 복잡한 데이터를 단순하고 유용한 형태로 재배치하는 R의 활용법 등에 대한 내용까지 다양하게 다룬다.
이 책에서 다루는 내용
■ 복잡한 데이터 세트와 함수를 시각화하는 예술적인 그래프 만들기
■ 병렬 R과 벡터화를 통한 좀더 효율적인 코드 작성
■ 코드 속도 및 기능 향상을 위한 R과 C/C++, 파이썬과의 인터페이스
■ 텍스트 분석, 이미지 수정 등을 위한 패키지 찾기
■ 개선된 디버깅 기술을 활용해 귀찮은 버그 찾아 고치기
목차
목차
- 『Visualize This 비주얼라이즈 디스』
- 1장 데이터 스토리텔링
- 숫자 그 이상
- 목표
- 디자인
- 정리
- 2장 데이터 다루기
- 데이터 수집 방법
- 데이터 형식화
- 정리
- 3장 도구의 선택
- 종합세트 시각화
- 프로그래밍
- 일러스트레이션
- 지도
- 각자의 선택
- 정리
- 4장 시간 시각화
- 무엇을 볼 것인가
- 시간 나눔
- 연속형 데이터
- 정리
- 5장 분포 시각화
- 무엇을 볼 것인가
- 전체의 부분
- 시간에 따른 분포
- 정리
- 6장 관계 시각화
- 무엇을 볼 것인가
- 상관관계
- 분포
- 비교
- 정리
- 7장 비교 시각화
- 무엇을 볼 것인가
- 여러 변수의 비교
- 차원을 줄인다
- 아웃라이어 찾기
- 정리
- 8장 공간 시각화
- 무엇을 볼 것인가
- 위치 특정
- 영역
- 시간과 공간에 따라
- 정리
- 9장 목적에 맞는 디자인
- 자신을 위한 준비
- 독자를 위한 준비
- 시각적 신호
- 훌륭한 시각화
- 정리
- 『빅데이터 분석 도구 R 프로그래밍』
- 1장 시작하기
- 1.1 R 실행하기
- 1.1.1 인터랙티브 모드
- 1.1.2 배치 모드
- 1.2 첫 번째 R 세션
- 1.3 함수 소개
- 1.3.1 변수의 범위
- 1.3.2 기본 인수
- 1.4 중요한 R 데이터 구조 예습하기
- 1.4.1 R의 일꾼, 벡터
- 1.4.2 문자열
- 1.4.3 행렬
- 1.4.4 리스트
- 1.4.5 데이터 프레임
- 1.4.6 클래스
- 1.5 확장 예제: 시험 성적을 회귀 분석하기(1)
- 1.6 시작과 종료
- 1.7 도움말 사용하기
- 1.7.1 help() 함수
- 1.7.2 example() 함수
- 1.7.3 무엇을 찾는지 정확하게 모르는 경우
- 1.7.4 다른 주제들에 대한 도움말
- 1.7.5 배치 모드에서의 도움말
- 1.7.6 인터넷 도움말
- 1.1 R 실행하기
- 2장 벡터
- 2.1 스칼라, 벡터, 배열, 행렬
- 2.1.1 벡터에 원소 추가 또는 삭제하기
- 2.1.2 벡터의 길이 파악하기
- 2.1.3 행렬과 배열을 벡터처럼 사용하기
- 2.2 선언
- 2.3 재사용
- 2.4 일반 벡터 연산
- 2.4.1 벡터의 산술 및 논리 연산
- 2.4.2 벡터 인덱싱
- 2.4.3 연산자로 유용한 벡터 생성하기
- 2.4.4 seq()를 이용해 벡터 순서 생성하기
- 2.4.5 rep()을 이용해 숫자 반복 벡터 만들기
- 2.5 all()과 any() 사용하기
- 2.5.1 확장 예제: 1이 연달아 나오는 부분 찾기
- 2.5.2 확장 예제: 이산적 시계열값 예측하기
- 2.6 벡터화 연산
- 2.6.1 벡터 입력과 출력
- 2.6.2 벡터 입력, 행렬 출력
- 2.7 NA와 NULL값
- 2.7.1 NA 사용하기
- 2.7.2 NULL 사용하기
- 2.8 필터링
- 2.8.1 필터링된 인덱스 생성하기
- 2.8.2 subset() 함수로 필터링하기
- 2.8.3 선택 함수 which()
- 2.9 벡터화 된 조건문: ifelse() 함수
- 2.9.1 확장 예제: 연관성 측정
- 2.9.2 확장 예제: Abalone 데이터 세트 기록하기
- 2.10 벡터 동일성 테스트
- 2.11 벡터 원소의 이름
- 2.12 c() 이상의 것
- 2.1 스칼라, 벡터, 배열, 행렬
- 3장 행렬과 배열
- 3.1 행렬 만들기
- 3.2 일반 행렬 연산
- 3.2.1 행렬에서 선형대수 연산 처리
- 3.2.2 행렬 인덱싱
- 3.2.3 확장 예제: 이미지 다루기
- 3.2.4 행렬 필터링
- 3.2.5 확장 예제: 공분산 행렬 생성하기
- 3.3 행렬의 행과 열에 함수 적용하기
- 3.3.1 apply() 함수 사용하기
- 3.3.2 확장 예제: 아웃라이어 탐색
- 3.4 행렬에 행과 열 추가 및 제거하기
- 3.4.1 행렬 크기 바꾸기
- 3.4.2 확장 예제: 그래프에서 서로 거리가 가장 가까운 두 점 찾기
- 3.5 벡터/행렬을 더 정확히 구분하기
- 3.6 의도하지 않은 차원 축소 피하기
- 3.7 행렬의 행과 열에 이름 붙이기
- 3.8 고차원 배열
- 4장 리스트
- 4.1 리스트 생성하기
- 4.2 일반 리스트 연산
- 4.2.1 리스트 인덱싱
- 4.2.2 리스트에 원소를 추가하고 삭제하기
- 4.2.3 리스트의 크기 확인하기
- 4.2.4 확장 예제: 텍스트 일치 확인하기(1)
- 4.3 리스트 구성요소와 값에 접근하기
- 4.4 리스트에 함수 적용하기
- 4.4.1 lapply()와 sapply() 함수 사용하기
- 4.4.2 확장 예제: 텍스트 일치 확인하기(2)
- 4.4.3 확장 예제: 다시 Abalone 데이터 사용하기
- 4.5 재귀 리스트
- 5장 데이터 프레임
- 5.1 데이터 프레임 생성하기
- 5.1.1 데이터 프레임에 접근하기
- 5.1.2 확장 예제: 시험 성적을 회귀 분석하기(2)
- 5.2 기타 행렬 방식 연산
- 5.2.1 부분 데이터 프레임 추출하기
- 5.2.2 NA 값을 다루는 추가적 방법들
- 5.2.3 rbind()와 cbind() 및 관련 함수 사용하기
- 5.2.4 apply() 적용하기
- 5.2.5 확장 예제: 월급 연구
- 5.3 데이터 프레임 결합하기
- 5.3.1 확장 예제: 직원 데이터베이스
- 5.4 데이터 프레임에 함수 적용하기
- 5.4.1 데이터 프레임에 lapply()와 sapply() 사용하기
- 5.4.2 확장 예제: 로지스틱 회귀 모델 적용하기
- 5.4.3 확장 예제: 중국어 사투리 공부 도와주기
- 5.1 데이터 프레임 생성하기
- 6장 팩터와 테이블
- 6.1 팩터와 레벨
- 6.2 팩터에 사용되는 일반적인 함수
- 6.2.1 tapply() 함수
- 6.2.2 split() 함수
- 6.2.3 by() 함수
- 6.3 테이블 사용하기
- 6.3.1 테이블로 행렬/배열 연산하기
- 6.3.2 확장 예제: 부분 테이블 추출하기
- 6.3.3 확장 예제: 테이블에서 가장 큰 셀 찾기
- 6.4 그 밖의 팩터 및 테이블 관련 함수
- 6.4.1 aggregate() 함수
- 6.4.2 cut() 함수
- 7장 R 프로그래밍 구조
- 7.1 조건문
- 7.1.1 반복문
- 7.1.2 벡터 이외의 유형을 사용하는 반복문
- 7.1.3 if-else
- 7.2 산술 및 불리언 연산 및 값
- 7.3 인수의 기본값
- 7.4 반환값
- 7.4.1 명시적으로 return()을 호출할지 판단하기
- 7.4.2 복잡한 객체 반환하기
- 7.5 함수는 객체다
- 7.6 환경 설정 및 범위 문제
- 7.6.1 최상위 레벨 환경변수
- 7.6.2 범위 계층 구조
- 7.6.3 ls() 좀 더 살펴보기
- 7.6.4 함수는 거의 부작용이 없다
- 7.6.5 확장 예제: 호출 프레임의 내용을 보여주는 함수
- 7.7 R에는 포인터가 없다
- 7.8 위층에 쓰기
- 7.8.1 고급 할당 연산자를 이용한 지역 외 변수 사용하기
- 7.8.2 assign()을 이용해 지역 외 변수 사용하기
- 7.8.3 확장 예제: R에서의 이산 사건 시뮬레이션
- 7.8.4 광역 변수는 언제 사용해야 하나?
- 7.8.5 클로저(Closure)
- 7.9 재귀
- 7.9.1 퀵소트 구현
- 7.9.2 확장 예제: 바이너리 서치 트리
- 7.10 교체 함수
- 7.10.1 교체 함수를 사용할 때 고려해야 하는 사항
- 7.10.2 확장 예제: 자동 부기 벡터 클래스
- 7.11 함수 코드 작성용 도구
- 7.11.1 텍스트 에디터와 통합 개발 툴
- 7.11.2 edit() 함수
- 7.12 자신만의 바이너리 연산자 사용하기
- 7.13 무기명 함수
- 7.1 조건문
- 8장 R에서 수학과 시뮬레이션 하기
- 8.1 수학 함수
- 8.1.1 확장 예제: 확률 계산
- 8.1.2 누적 합과 곱
- 8.1.3 최소값과 최대값(복수 가능)
- 8.1.4 미적분
- 8.2 통계 분포를 위한 함수
- 8.3 정렬
- 8.4 벡터와 행렬의 선형 대수 연산
- 8.4.1 확장 예제: 벡터 외적
- 8.4.2 확장 예제: 마코브 체인(Markov Chain)의 고정 분포 찾기
- 8.5 집합 연산
- 8.6 R에서 시뮬레이션 프로그래밍 하기
- 8.6.1 내장 랜덤 변수 생성기
- 8.6.2 반복 수행 시에 동일한 랜덤 연속값 얻기
- 8.6.3 확장 예제: 조합 시뮬레이션
- 8.1 수학 함수
- 9장 객체 지향 프로그래밍
- 9.1 S3 클래스
- 9.1.1 S3 제네릭 함수
- 9.1.2 예제: 선형 모델 함수 lm()에서 OOP
- 9.1.3 제네릭 메소드 실행 내역 찾기
- 9.1.4 S3 클래스 작성하기
- 9.1.5 상속 사용하기
- 9.1.6 확장 예제: 위 삼각 행렬 저장 클래스
- 9.1.7 확장 예제: 다항 회귀 분석 과정
- 9.2 S4 클래스
- 9.2.1 S4 클래스 작성하기
- 9.2.2 S4 클래스에서 제네릭 함수 구현하기
- 9.3 S3 대 S4
- 9.4 객체 관리하기
- 9.4.1 ls() 함수를 사용해 객체 나열하기
- 9.4.2 rm() 함수를 사용해 특정 객체 제거하기
- 9.4.3 save() 함수를 사용해 객체들을 저장하기
- 9.4.4 “이건 뭐지?”
- 9.4.5 exists() 함수
- 9.1 S3 클래스
- 10장 입력과 출력
- 10.1 키보드와 모니터에 접근하기
- 10.1.1 scan() 함수 사용하기
- 10.1.2 readline() 함수 사용하기
- 10.1.3 화면에 출력하기
- 10.2 파일 읽고 쓰기
- 10.2.1 파일에서 데이터 프레임이나 행렬 읽어오기
- 10.2.2 텍스트 파일 읽기
- 10.2.3 커넥션 입문
- 10.2.4 확장 예제: PUMS 통계 파일
- 10.2.5 URL을 통해 원격으로 파일에 접속하기
- 10.2.6 파일에 쓰기
- 10.2.7 파일과 디렉터리 정보 얻기
- 10.2.8 확장 예제: 많은 파일의 내용의 합
- 10.3 인터넷에 접근하기
- 10.3.1 TCP/IP 개요
- 10.3.2 R의 소켓
- 10.3.3 확장 예제: 병렬처리 R 구현하기
- 10.1 키보드와 모니터에 접근하기
- 11장 문자열 처리
- 11.1 문자열 처리 함수 개요
- 11.1.1 grep()
- 11.1.2 nchar()
- 11.1.3 paste()
- 11.1.4 sprint()
- 11.1.5 substr()
- 11.1.6 strsplit()
- 11.1.7 regexpr()
- 11.1.8 gregexpr()
- 11.2 정규 표현식
- 11.2.1 확장 예제: 주어진 확장자의 파일명 테스트
- 11.2.2 확장 예제: 파일명 구성하기
- 11.3 디버깅 도구 edtdbg에서 문자열 관련 기능 사용하기
- 11.1 문자열 처리 함수 개요
- 12장 그래픽
- 12.1 그래프 만들기
- 12.1.1 R 기본 그래픽의 주요 담당자: plot() 함수
- 12.1.2 선 추가하기: abline() 함수
- 12.1.3 기존 것을 유지한 상태로 새 그래프 그리기
- 12.1.4 확장 예제: 한 화면에 두 개의 밀도 추정 그래프 나타내기
- 12.1.5 확장 예제: 다항 회귀 예제
- 12.1.6 점 추가: points() 함수
- 12.1.7 범례 추가: legend() 함수
- 12.1.8 텍스트 추가: text() 함수
- 12.1.9 위치 찾기: locator() 함수
- 12.1.10 그래프 복구
- 12.2 그래프 꾸미기
- 12.2.1 문자 크게 조절: cex 옵션
- 12.2.2 축의 범위 바꾸기: xlim과 ylim 옵션
- 12.2.3 다각형 추가. polygon() 함수
- 12.2.4 선의 곡선화: lowess()와 loess() 함수
- 12.2.5 명시적 함수 그래프화
- 12.2.6 확장 예제: 곡선의 일부를 확대하기
- 12.3 그래프를 파일에 저장하기
- 12.3.1 R 그래픽 장치
- 12.3.2 출력된 그래프 저장하기
- 12.3.3 R 그래픽 장치 닫기
- 12.4 3차원 그래프 생성하기
- 12.1 그래프 만들기
- 13장 디버깅
- 13.1 디버깅의 기본 원칙
- 13.1.1 디버깅의 기본: 확인 원칙
- 13.1.2 작은 것부터 시작하기
- 13.1.3 모듈식, 하향식 디버깅
- 13.1.4 버그 예방
- 13.2 왜 디버깅 도구를 사용할까?
- 13.3 R 디버깅 기능 사용하기
- 13.3.1 debug()와 browser() 함수를 사용한 개별 단계 살펴보기
- 13.3.2 브라우저 명령어 사용하기
- 13.3.3 중단점 설정하기
- 13.3.4 trace() 함수로 추적하기
- 13.3.5 충돌 발생 후 traceback()과 debugger() 함수를 사용해 확인하기
- 13.3.6 확장 예제: 두 가지의 전체 디버깅 과정
- 13.4 국제적인 움직임: 보다 편리한 디버깅 도구
- 13.5 시뮬레이션 코드 디버깅에서의 일관성 보장하기
- 13.6 구문 및 런타임 오류
- 13.7 R 자체에서 GDB 실행하기
- 13.1 디버깅의 기본 원칙
- 14장 성능 향상: 속도와 메모리
- 14.1 빠른 R 코드 작성하기
- 14.2 반복문에 대한 두려움
- 14.2.1 속도 향상을 위한 벡터화
- 14.2.2 확장 예제: 몬테카를로 시뮬레이션의 속도를 향상시키기
- 14.2.3 확장 예제: 멱행렬 생성하기
- 14.3 함수형 프로그래밍과 메모리 문제
- 14.3.1 벡터 할당 문제
- 14.3.2 복사 후 변경 문제
- 14.3.3 확장 예제: 메모리 복사 피하기
- 14.4 코드에서 느린 부분을 찾을 때 사용하는 Rprof()
- 14.4.1 Rprof()를 사용한 모니터링
- 14.4.2 Rprof()의 작동 원리
- 14.5 바이트 코드 컴파일
- 14.6 데이터가 메모리에 들어가지 않아요!
- 14.6.1 청킹
- 14.6.2 메모리 관리를 위한 R 패키지 사용하기
- 15장 타 언어와 R을 인터페이스하기
- 15.1 R에서 호출하는 C/C++ 함수 작성하기
- 15.1.1 R을 C/C++과 연동할 때의 선행지식
- 15.1.2 예제: 정사각 행렬에서 부분 대각행렬 추출
- 15.1.3 컴파일하고 코드 실행하기
- 15.1.4 R/C 코드 디버깅하기
- 15.1.5 확장 예제: 이산 시계열값 예측
- 15.2 파이썬에서 R 사용하기
- 15.2.1 RPy 설치하기
- 15.2.2 RPy 문법
- 15.1 R에서 호출하는 C/C++ 함수 작성하기
- 16장 병렬 R
- 16.1 상호 아웃링크 문제
- 16.2 snow 패키지 소개
- 16.2.1 snow 코드 실행하기
- 16.2.2 snow 코드 분석하기
- 16.2.3 어느 정도의 속도 향상이 가능할까
- 16.2.4 확장 예제: K-평균 클러스터링
- 16.3 C 사용하기
- 16.3.1 멀티코어 사용하기
- 16.3.2 확장 예제: OpenMP에서의 상호 아웃링크 문제
- 16.3.3 OpemMP 코드 실행하기
- 16.3.4 OpenMP 코드 분석
- 16.3.5 다른 OpenMP 프라그마
- 16.3.6 GPU 프로그래밍
- 16.4 성능에 대해 일반적으로 고려할 사항
- 16.4.1 과부하의 원인
- 16.4.2 당황스러운 병렬 어플리케이션과 그렇지 않은 어플리케이션의 차이
- 16.4.3 정적 할당 대 동적 할당
- 16.4.4 소프트웨어 연금술: 일반적인 문제를 당황스러운 병렬 문제로 바꾸기
- 16.5 병렬 R 코드 디버깅하기
- 부록 AR 설치하기
- A.1 CRAN에서 R 내려 받기
- A.2 리눅스 패키지 매니저를 사용해 설치하기
- A.3 소스 파일로 설치하기
- 부록 B 패키지 설치 및 사용
- B.1 기본 패키지
- B.2 하드 디스크에서 패키지 불러오기
- B.3 웹에서 패키지 다운로드하기
- B.3.1 자동으로 패키지 설치하기
- B.3.2 수동으로 패키지 설치하기