장바구니 담기 close

장바구니에 상품을 담았습니다.

R에서 객체지향 프로그래밍 사용하기

R에서 객체지향 프로그래밍 사용하기 R 언어 기초부터 객체지향 개념(S3, S4 클래스)과 사례 연구까지

  • 켈리 블랙 지음 | 정사범 옮김
  • |
  • 에이콘출판
  • |
  • 2016-07-29 출간
  • |
  • 228페이지
  • |
  • 188 X 235 mm
  • |
  • ISBN 9788960778825
★★★★★ 평점(10/10) | 리뷰(1)
판매가

20,000원

즉시할인가

18,000

배송비

무료배송

(제주/도서산간 배송 추가비용:3,000원)

수량
+ -
총주문금액
18,000

※ 스프링제본 상품은 반품/교환/환불이 불가능하므로 신중하게 선택하여 주시기 바랍니다.

출판사서평

★ 이 책에서 다루는 내용 ★

■ R의 기본적인 데이터 유형 및 구조
■ 일반 업무를 표현하는 데 도움이 되는 기본 명령과 도구들
■ 알고리즘 구현을 위한 R의 기본 제어 구조 사용 방법
■ S3와 S4 클래스의 사용 및 개발
■ S3와 S4 클래스 간의 차이 이해
■ 일반 문제를 해결하기 위한 다양한 아이디어 획득
■ R을 통한 객체지향 프로그래밍의 기본 설계 및 접근법

★ 이 책의 대상 독자 ★

이 책은 프로그래밍에 익숙하고 R 환경에 대한 기본적인 이해를 갖추었으며 R 언어를 사용한 프로그래밍 애플리케이션 구현 방법을 배우고자 하는 사람에게 적합하다. 따라서 여러분이 이미 R 환경을 경험했으며 R의 기본을 이해하고 있다고 가정한다. 이 책은 독자가 소프트웨어 애플리케이션 개발에 익숙하다고 가정하기 때문에 구체적인 접근이나 실행 목적을 가진 광범위한 독자들에게 동기 부여를 하지는 않는다.

★ 이 책의 구성 ★

여러 장에 걸쳐 설명할 내용은 다음과 같다. 처음 세 개의 장은 주로 시스템에 데이터를 불러오는 것과 관련된 기본 요구 사항과 데이터 연관 계산 시 가장 기본적인 업무에 중점을 두고 설명한다. 다음 세 개의 장은 여러 데이터 형식을 다루는 기술을 포함해 데이터를 살펴보거나 데이터로 작업할 때 실제로 발생하는 여러 가지 이슈 사항에 중점을 둔다. 그다음 세 개의 장은 기본 및 고급 프로그래밍 주제를 다룬다. 마지막 세 개의 장은 문제를 해결하는 데 여러 아이디어를 결합하는 방법을 설명하기 위해 좀 더 상세한 예제를 제공한다

1장, ‘데이터 형식’에서는 다양한 데이터 형식에 대해 설명한다. float, double, complex, factors, integer 같은 기본 표현을 포함한다. 또한 대화식 셸(shell)에서 벡터를 입력하는 방법에 대해 예를 들어 설명한다. 가장 기본적인 운영에 대한 설명과 R 셸과 상호작용하는 방법도 설명한다.

2장, ‘데이터 구조화’에서는 R 환경에서 데이터를 조직화하는 방법에 대해 좀 더 상세히 설명한다. 추가적으로 데이터를 접근하는 방법과 다양한 데이터 구조에 대한 기본 연산을 수행하는 방법을 설명한다. 조사 대상인 주요 데이터 구조에는 lists, arrays, tables, data frames가 있다.

3장, ‘데이터 저장과 결과 출력하기’에서는 데이터를 R 환경으로 가져오기 위한 방법에 대해 2장에서 설명한 주제를 기반으로 상세히 살펴본다. 또한 데이터를 저장하는 방법과 결과를 표시하는 방법에 대해서도 설명한다.

4장, ‘확률과 랜덤 숫자 계산하기’에서는 확률에 대한 상세한 연구와 R 언어의 샘플링 특성을 제공한다. R 환경은 데이터 분석 방법에 도움을 주는 다양한 특성을 갖고 있다. 모든 통계분석은 확률에 근거하므로 무시할 수 없는 주제다. 다양한 확률과 샘플링 옵션은 R 언어의 장점 중 하나며 이 장에서는 몇 가지 옵션을 알아본다.

5장, ‘문자와 문자열 연산’에서는 문자열에 대한 조사, 테스트, 연산 수행이 가능한 다양한 옵션을 설명한다. 이러한 주제는 데이터 세트가 일관적이지 않은 경우가 잦아 중요한 주제다. 게다가 파일에서 데이터를 읽는 루틴은 몇 가지 기본 검토를 필요로 한다.

6장, ‘시간 변수의 변환과 정의’에서는 시간 데이터 구조를 상세하게 설명한다. 기본 설명은 1장에서 다루었고 6장에서는 좀 더 상세한 내용을 다룬다. 시간 관련 데이터는 그 수가 점점 많아져 더 이상 무시할 수 없는 중요한 데이터 구조가 되었다.

7장, ‘기본 프로그래밍’에서는 가장 기본적인 흐름 제어와 R 언어의 프로그래밍 특성에 대해 상세히 살펴본다. 또한 조건부 실행과 다양한 반복 구조에 대해 상세 내용을 제공한다. 추가로 프로그램 작성, 실행 및 포맷팅과 연관된 일반적인 주제에 대해서도 설명한다.

8장, ‘S3 클래스’에서는 S3 클래스에 대한 상세 내용을 설명한다. 이 내용은 객체지향 프로그래밍에 대한 첫 번째이자 가장 일반적인 접근법이다. S3 클래스의 사용은 이미 객체지향 프로그래밍에 익숙한 사람들에게는 혼란스러울 수 있다. 하지만 유연성 때문에 S3 클래스는 R에서 객체지향 프로그래밍 접근법으로 가장 유명해졌다.

9장, ‘S4 클래스’에서는 S4 클래스에 대해 상세하게 설명한다. S3 클래스와 비교하면 S4 클래스는 객체지향 프로그래밍에 대한 좀 더 새로운 접근법이다. 이것은 한층 더 구조적인 접근법이기도 하며 객체지향 프로그래밍 관련 경험을 가진 사람들에게 더 익숙하다.

10장, ‘사례연구: 과정 등급’에서는 등급-추적 애플리케이션의 심층적인 사례를 제공한다. 총 세 가지의 사례 중 첫 번째로, 가장 간단한 사례다. 많은 사람들에게 익숙한 내용을 선택했다. ##예제를 제공하는 것이 아니라 등급-추적 애플리케이션의 세 가지 예를 10, 11, 12장을 통해 설명하는 것 같습니다.

11장, ‘사례연구: 시뮬레이션’에서는 몬테카를로 시뮬레이션(Monte-Carlo Simulation)에 근거해 데이터를 생성하는 데 사용되는 애플리케이션 사례를 제공한다. 또한 시뮬레이션을 실행하고 결과를 체계화하며 결과에 대한 기본 분석을 실행하는 데 사용하는 환경을 생성하기 위해 객체지향 접근 방법이 사용되는 방법을 보여준다.

12장, ‘사례연구: 회귀분석’에서는 여러분이 회귀분석을 수행하기 위해 사용할 수 있는 다양한 옵션을 제공하는 애플리케이션 사례를 제공한다. 회귀분석은 다양한 상황에서 발생하는 일반적인 작업이다. 개발된 이 애플리케이션은 객체지향 접근법의 사용을 보여줄 수 있는 방법으로써 연속형과 서수형 데이터를 융통성 있게 처리하는 방법을 보여준다. 여러분은 이 장의 내용을 팩트출판사 홈페이지(https://www.packtpub.com/sites/default/files/downloads/6682OS_Case_Study_Regression.pdf)에서 다운로드할 수 있다.

부록, ‘패키지 관리’에서는 패키지 설치, 갱신, 제거에 대해 간략히 소개한다. 패키지는 R의 분석 능력을 확장하기 위해 추가할 수 있는 라이브러리다. R을 확장하며 다른 라이브러리를 사용할 수 있는 점은 좀 더 강력한 특징에 해당한다.

목차

1장. 데이터 형식

__값 할당
__작업 영역
__이산형 데이터 형식
____정수형
____논리형
____문자형
____팩터
__연속형 데이터 형식
____더블
____복소수
__특정 데이터 형식
____as와 is 함수에 관한 유의 사항
__요약

2장. 데이터 구조화

__기초 데이터 구조
____벡터
____리스트
____데이터 프레임
____테이블
____행렬과 배열
____데이터 검열
____행과 열을 추가하기
__데이터 구조에 대한 연산
____apply 명령
____apply
______lapply와 sapply
______tapply
______mapply
__요약

3장. 데이터 저장과 결과 출력

__파일과 폴더 정보
____데이터 입력
____명령줄에서 데이터 입력하기
____파일에서 테이블 읽어오기
____CSV 파일
____고정 폭 파일
__결과 출력과 데이터 저장
____작업 공간 저장
____cat 명령
____출력, 형식, 붙여넣기 명령
__기본 입/출력
__네트워크 옵션
____소켓 열기
____기본 소켓 작업
__요약

4장. 확률과 난수 계산

__개요
__분포함수
__누적분포함수
__역누적 분포함수
__의사 난수 생성하기
__샘플링
__요약

5장. 문자와 문자열 연산

__기초 문자열 연산
__여섯 개 중점 작업
____문자열의 길이를 결정하기
____부분 문자열의 위치
____부분 문자열을 추출하거나 변경하기
____대소문자 변환
____문자열 나누기
____일정 형식을 갖춘 문자열 생성
__정규표현
__요약

6장. 시간 변수의 변환과 정의

__개요 및 가정
__문자열을 시간 데이터 형식으로 변환
__시간 데이터 형식을 문자열로 변환
__시간 데이터 형식에 대한 연산
__요약

7장. 기본 프로그래밍

__조건부 실행
__루프 구조
____for 루프 구조
____while 루프 구조
____repeat 루프 구조
____break와 next문
__함수
____함수 정의
____함수에 대한 인자
____범위
____스크립트 실행하기
__요약

8장. S3 클래스

__클래스와 메소드 정의하기
__객체와 상속을 정의하기
__캡슐화
__최종 유의 사항
__요약

9장. S4 클래스

__Ant 클래스 소개
__S4 클래스 정의
__S4 클래스에 대해 메소드를 정의하기
____신규 메소드를 정의하기
____다형성
____현 메소드 확장하기
__상속
__기타 참고 사항
__요약

10장. 사례연구: 과정 등급

__개요
__과정(Course) 클래스
____과정(Course) 클래스의 정의
____한 개 파일에서 등급을 읽어오기
__과제 클래스
____숫자형 등급 클래스
____문자형 등급 클래스
____예제: 파일에서 등급을 읽어오기
__인덱싱 연산 정의하기
__현존 함수를 재정의하기
__산술연산 재정의하기
__요약

11장. 사례연구: 시뮬레이션

__시뮬레이션 클래스
__몬테카를로 클래스
__예제
__요약

12장. 사례연구: 회귀분석

__데이터
__관련 클래스
__회귀 클래스
__데이터 탐색하기
__요약

부록. 패키지 관리

교환 및 환불안내

도서교환 및 환불
  • ㆍ배송기간은 평일 기준 1~3일 정도 소요됩니다.(스프링 분철은 1일 정도 시간이 더 소요됩니다.)
  • ㆍ상품불량 및 오배송등의 이유로 반품하실 경우, 반품배송비는 무료입니다.
  • ㆍ고객님의 변심에 의한 반품,환불,교환시 택배비는 본인 부담입니다.
  • ㆍ상담원과의 상담없이 교환 및 반품으로 반송된 물품은 책임지지 않습니다.
  • ㆍ이미 발송된 상품의 취소 및 반품, 교환요청시 배송비가 발생할 수 있습니다.
  • ㆍ반품신청시 반송된 상품의 수령후 환불처리됩니다.(카드사 사정에 따라 카드취소는 시일이 3~5일이 소요될 수 있습니다.)
  • ㆍ주문하신 상품의 반품,교환은 상품수령일로 부터 7일이내에 신청하실 수 있습니다.
  • ㆍ상품이 훼손된 경우 반품 및 교환,환불이 불가능합니다.
  • ㆍ반품/교환시 고객님 귀책사유로 인해 수거가 지연될 경우에는 반품이 제한될 수 있습니다.
  • ㆍ스프링제본 상품은 교환 및 환불이 불가능 합니다.
  • ㆍ군부대(사서함) 및 해외배송은 불가능합니다.
  • ㆍ오후 3시 이후 상담원과 통화되지 않은 취소건에 대해서는 고객 반품비용이 발생할 수 있습니다.
반품안내
  • 마이페이지 > 나의상담 > 1 : 1 문의하기 게시판 또는 고객센터 : 070-4821-5101
교환/반품주소
  • 부산광역시 부산진구 중앙대로 856 303호 / (주)스터디채널 / 전화 : 070-4821-5101
  • 택배안내 : CJ대한통운(1588-1255)
  • 고객님 변심으로 인한 교환 또는 반품시 왕복 배송비 5,000원을 부담하셔야 하며, 제품 불량 또는 오 배송시에는 전액을 당사에서부담 합니다.