Top

R을 활용한 바이오인포매틱스 [바이오 의료와 생명과학 정보 분석 Bioinformatics]

  • 원서명Bioinformatics with R Cookbook (ISBN 9781783283132)
  • 지은이포루쉬 프라빈 신하(Paurush Praveen Sinha)
  • 옮긴이염현식
  • ISBN : 9788960776876
  • 33,000원
  • 2015년 04월 13일 펴냄
  • 페이퍼백 | 404쪽 | 188*235mm
  • 시리즈 : acorn+PACKT, 데이터 과학

책 소개

요약

생명정보학이라고 일컫는 바이오인포매틱스(Bioinformatics)는 생물학적 데이터를 이용해 여러 분석 과정을 시행하고, 이를 통해 새로운 내용을 확인하는 학문이며, 최근 이러한 생명정보학 분석 과정에 가장 많이 사용되는 언어는 R이다. 이 책은 R을 이용한 다양한 예제를 제공해 생명정보학 분석 과정을 체계적이고 직관적으로 설명한다. 이 책을 통해 바이오인포매틱스, 즉 생명정보학의 이론적 배경뿐 아니라 실제적 접근 방식에 대한 충분한 지식과 기술을 얻을 수 있다.

이 책에서 다루는 내용

■ 웹 페이지를 이용하지 않고 R을 통해 생물학적 데이터 추출
■ 데이터의 주석화, 농축화, 식별자의 전환
■ PubMed를 통해 적절한 문서 확인
■ 종들 간의 계통적 연관성 확인
■ 전장유전체 연관 분석을 통해 유전자 정보와 질환의 연관성 확인
■ 생물학적 또는 임상적 특징에 기반을 둔 환자 분류
■ 출판과 발표에 이용할 수 있는 시각화를 통한 생물학적 데이터의 제시

이 책의 대상 독자

사람들은 가끔 큰 불안감을 가지고 프로그래밍에 접근할 때가 있다. 이 책의 목적은 과학자들에게 생명정보학과 컴퓨터 생명공학에서의 다양한 일반적인 문제점들에 대한 안내를 제공해주는 것이다. 또한 R이 아닌 다른 언어에 익숙한 생명정보학과 컴퓨터 생명공학의 프로그래머들에게 도움을 주고자 한다.

독자들에게는 생명정보학의 기본적인 부분들에 대한 친밀감과 컴퓨터 프로그래밍에 대한 기본 지식이 요구된다. 그러나 있을지 모를 어느 정도의 간극을 메우기 위해 모든 장의 시작 부분에 짧은 기본적인 설명을 제시했다.

이 책은 R을 이용한 기본적 프로그래밍이나 생명정보학과 통계학의 기본에 관한 책이 아니다. 필요할 때마다 연관성이 있는 참고 문헌, 책, 블로그의 제시를 통해 적절한 이론적 내용을 제공했다. 예제는 대부분 바로 사용할 수 있지만, 이에 따라서 분석을 하기 전에 독자가 직접 데이터를 확인해보고 개인적인 느낌을 가져볼 것을 강력히 추천한다.

이 책의 구성

1장, ‘R을 이용한 생명정보학 시작’에서는 R의 기본 작업을 설명한다. 주요 주제는 패키지 설치, 데이터 처리와 조작이다. 대부분의(특히 생명의학) 연구에서 첫 번째 단계인 문헌 탐색을 위한 예제로 내용이 확장된다.

2장, ‘Bioconductor 소개’에서는 Bioconductor에서 패키지를 이용해 기본적인 생명정보학의 문제들, 특히 생물학의 메타데이터와 연관된 문제들을 해결하기 위한 예제를 제공한다. 유전자와 단백질의 ID 전환 및 기능적 농축(functional enrichment)에 관련된 내용을 설명한다.

3장, ‘R을 이용한 서열 분석’에서는 문자 단위의 서열 데이터에 대해 주로 설명한다. 서열 데이터 추출, 서열 정렬, 서열의 패턴 탐색 예제를 다룬다.

4장, ‘R을 이용한 단백질 구조 분석’에서는 배열과 구조 수준에서 단백질을 다루는 방법을 설명한다. 서열이나 구조 분석 같은 단백질 생명정보학의 중요한 관점과 방법을 다룬다. 예제는 단백질 구조 분석, 도메인 주석, 단백질의 구조적 특성 분석 등을 포함한다.

5장, ‘R을 이용한 마이크로어레이 데이터 분석’에서는 마이크로어레이 데이터를 읽고 올리는 내용의 예제로 시작해, 이 데이터의 전처리, 필터링, 마이닝, 기능적 농축의 설명으로 이어진다. 마지막으로 유전자 간의 관계를 나타내기 위한 방법으로 공발현(co-expression) 네트워크를 소개한다.

6장, ‘전장유전체 연관 분석(GWAS) 데이터 분석’에서는 생물학적 추론을 위한 전장유전체 연관 분석 데이터의 분석에 관해 이야기한다. 또한 단위 반복 변이(CNV) 데이터뿐만 아니라 다중 연관 분석에 대해 설명한다.

7장, ‘질량 분석 데이터 분석’에서는 질량 분석 데이터의 다양한 관점을 다룬다. 서로 다른 데이터 형식을 읽어 들이고 분석하고 수량화하는 주제를 다룬다.

8장, ‘차세대 시퀀싱 데이터 분석’에서는 차세대 시퀀싱 데이터 처리, RNA 시퀀싱, 칩 시퀀싱, 메틸화 데이터를 다루는 예제에 대해 설명한다.

9장, ‘생명정보학에서의 기계 학습’에서는 생명정보학에서의 기계 학습에 관한 예제를 다룬다. 생물학적 데이터로부터의 추론을 위한 군집화, 분류, 베이지안 학습에 대한 주제를 다룬다.

부록 A, ‘R에서 유용한 연산자와 함수’에서는 다양한 일반적이거나 비일반적인 연산을 시행할 수 있는 유용한 R 함수에 대해 설명한다.
부록 B, ‘유용한 R 패키지’에서는 여러 다른 유형의 분석과 시각화를 위한 유틸리티를 담고 있는 흥미로운 라이브러리들의 목록과 설명을 제공한다.

본문에 쓰인 컬러 이미지는 여기에서 내려 받으세요.

저자/역자 소개

저자 서문

최근 유전체학과 분자생물학 기법에서는 상당한 발전들이 있었으며, 이로 인해 데이터 붐이 일어나게 됐다. 이러한 엄청난 양의 데이터를 체계적인 방식으로 해석하는 것은 도전적인 과제이며, 새로운 컴퓨터 도구의 개발이 필요하다. 이에 따라 통계적 데이터 분석, 데이터 마이닝, 기계 학습 등의 분야에 대한 흥미롭고 새로운 시각들이 부각되고 있다. 통계전문가들이 선호하는 도구인 R은 생명정보학(bioinformatics) 분야에서도 널리 쓰이는 소프트웨어다. 그 이유로는 R의 유연함, 데이터 처리 및 모델링 능력, 그리고 가장 중요한 것으로 무료라는 점을 들 수 있다.

R은 자유롭고 강건한 통계 프로그래밍 환경이다. R은 통계, 통계 프로그래밍, 시각화를 위한 강력한 도구다(주로 통계 분석에 사용된다). R은 C를 포함한 많은 프로그래밍 언어의 기원지인 벨연구소의 존 챔버스(John Chambers)에 의해 개발된 S로부터 영향을 받았으며, 1990년대 초반에 로스 이하카(Ross Ihaka)와 로버트 젠틀맨(Robert Gentleman)에 의해 발전이 이뤄졌다.

거의 같은 시기에 생명정보학은 생물학을 변혁시킨 시퀀싱, 고속 대량 스크리닝(screening), 마이크로어레이(microarray) 같은 기술적 혁신의 출현으로 인해 특정한 과학적 분야로 부각됐다. 이러한 기술들로 인해 생물체의 전체 유전체 서열을 생성해 낼 수 있었다. 마이크로어레이로 인해 수천 개의 mRNA를 확인할 수 있었으며, 그 밖에도 많은 것들이 가능하게 됐다. 이 모든 기술 발전 덕분에 작은 데이터 체계로부터 하나의 큰 데이터 체계로 패러다임의 전환이 일어났으며, 이 현상은 현재까지도 계속되고 있다. 데이터 급증에 의해 제기된 어려움들을 해결하기 위해 연구자들은 데이터 처리에 있어 가능한 모든 도구를 사용하게 됐다. 이때까지만 해도 R은 초기 단계에 있었고 통계 전문가들에게 알려져 있는 정도였다. 그러나 1990년대 후반(그리고 이후 수십 년) 동안 수요 증가와 강력한 기능에 힘입어 R은 컴퓨터 생명공학 및 생명정보학 분야에서 인기를 얻기 시작했다.

R 환경은 기본적인 프로그래밍 기능을 제공하는 기본 프로그램으로 구성된다. 이러한 기능은 패키지 또는 라이브러리라고 불리는 작은 특수화된 프로그램 모듈을 통해 확장될 수 있다. 이와 같은 모듈 구조로 인해 하나의 프로그램 안에서 대부분의 데이터 분석을 통합할 수 있다. 이에 더해 R은 커맨드라인 환경이므로 전제적으로 요구되는 프로그래밍 기술이 적다. 그렇지만 어느 정도의 프로그래밍 경험은 있어야 한다.

이 책에서는 R을 이용해 생명정보학 및 컴퓨터 생명공학에서의 다양한 데이터 분석 과정을 설명한다. 이 책을 통해 여러 실험들로부터 얻은 생물학적 데이터의 분석과 관련된 많은 재미있는 문제들을 해결할 수 있을 것이다. 대부분의 장에서는 결과를 보여주기 위한 흥미로운 시각화가 제시된다.

저자 소개

포루쉬 프라빈 신하(Paurush Praveen Sinha)

지난 7년간 주로 R로 작업을 진행하고 있는 엔지니어다. 독일의 프라운호퍼 알고리듬과 과학 컴퓨팅 연구소(Fraunhofer Institute for Algorithms and Scientific Computing(SCAI))에서 리서치 연구원으로 시작할 때 생명정보학과 R을 처음 접했다. 이후 박사과정 중 생물학적 데이터를 분석하기 위해 R을 이용한 다양한 기계 학습 방법을 발전시켰다. R 이외에도 자바, C, MATLAB 등의 많은 프로그래밍 언어를 경험했다. 다수의 R 패키지 개발에도 참여했으며, 현재 기계 학습과 생명정보학에 초점을 맞춰 새로운 패키지 개발 작업을 진행 중이다. 2013년 후반에는 이탈리아 트렌토(Trento) COSBI의 마이크로소프트 연구대학(Research-University)에 연구원으로 참여했다. 생명정보학의 문제들을 해결하기 위해 R을 이용해 다양한 유틸리티와 기계 학습 방법을 개발하고 있다.

옮긴이의 말

생명정보학은 생물학적 데이터를 이용해 여러 분석 과정을 시행하고 이를 통해 새로운 내용을 확인하는 학문입니다. 그 분석에 있어 다양한 통계학적 기법이 사용되며, 일부 기법은 매우 복잡한 과정을 거치기도 합니다. 이러한 복잡한 과정들을 고려할 때 생명정보학 데이터 처리에 있어 가장 적합한 도구는 R이라고 생각합니다. 또한 R은 무료 소프트웨어이므로 접근성에 있어서도 큰 장점을 갖고 있습니다. 그러나 생명정보학과 R, 두 분야 모두 아직까지 많은 사람에게 친숙하게 느껴지지는 않을 것입니다. 이 두 분야를 연결해 새로운 지식과 내용을 확인하는 것은 그 자체로 매우 흥미롭기도 하고, 한편으로는 큰 어려움을 느낄 수도 있습니다. 이 책의 번역을 진행한 저 또한 이 두 가지 느낌에서 왔다 갔다 하면서 시간을 보냈던 것 같습니다. 그러나 그 과정을 겪으면서 생명정보학의 학문적 매력을 깊이 느낄 수 있었습니다.

번역 중에 참고했던 생명정보학에 관한 다른 책들과 비교했을 때 이 책은 세 가지의 큰 특징이 있습니다. 첫째는 예제를 통해 분석 과정을 단계적으로 자세히 설명하고 있다는 점입니다. 해당 분석 과정에 대한 사전 지식이 충분하지 않더라도 단계적으로 진행하면서 그 때마다의 결과물을 확인해보면 분석 과정에 대한 이해가 빠르고 쉽게 될 수 있었습니다. 둘째는 그래픽스 과정에 대해 자세하게 설명하고 있다는 점입니다. 결과물의 빠른 이해를 위해 그래픽스는 필수 요소라 생각합니다. 이 책은 분석 과정에서 필요할 때마다 그래프를 적극적으로 활용하고 그에 대한 충분한 설명을 함으로써 방대한 생물학적 데이터의 직관적 이해를 보여주고 있습니다. 셋째는 생명정보학의 주요 관심 분야를 빠짐없이 균형감을 잃지 않고 모두 다룬다는 점입니다. 생명정보학이라는 분야가 현재 지속적으로 발전하고 있으므로 앞으로 또 다른 새로운 기술들이 발전하겠지만, 적어도 현재까지의 주요한 내용들은 모두 예제를 통해 확인할 수 있었습니다. 이러한 세 가지의 특징을 고려할 때 생명정보학을 처음 접하시는 분들께는 이 책이 가장 적합할 것이라는 생각이 들었습니다. 또한 생명정보학을 공부하면서 자연스럽게 R에 대한 이해도가 한층 더 깊어질 수 있을 것입니다.

다른 분들보다 약간 빨리 이 책을 접할 기회를 갖게 되고 다른 참고 자료들을 찾아보면서 도움이 되는 다른 책들에 대한 개인적인 정보나 느낌도 어느 정도 갖게 됐습니다. 필요시 언제든지 제게 이메일을 주시면 궁금하신 부분에 대해 제 생각을 전해드리겠습니다. 생명정보학과 R에 관심을 가지신 분들께서 이 책을 통해 좀 더 쉽게 생명정보학을 이해하실 수 있는 계기가 되기를 기대합니다.

옮긴이 소개

염현식

시험관아기시술 센터에서 불임 전문 산부인과 의사로 활동 중이다. 메타 분석을 포함한 통계 분석, 그래픽스, 논문 작성 등에 많은 관심이 있으며, 이러한 분야에 R을 적극적으로 사용하고 있다. 통계 및 그래픽스 과정을 좀 더 쉽게 이해하고, 이를 바탕으로 부담 없이 논문을 작성할 수 있는 방법을 찾기 위해 끊임없이 노력 중이다. R을 익숙하게 사용하기 위해 어느 정도의 노력과 시간이 필요하기는 하지만 활용도에 있어 너무나 많은 장점이 있음을 확신하고 있으며, 많은 사람의 관심을 통한 R의 대중화를 기대하고 있다.

목차

목차
  • 1장 R을 이용한 생명정보학 시작
    • 소개
    • 시작과 라이브러리 설치
    • 데이터 읽고 쓰기
    • 데이터 필터링과 세분화
    • 데이터에 대한 기본적인 통계 작업
    • 확률 분포 생성
    • 데이터에 대한 통계적 검정 시행
    • 데이터 시각화
    • R에서 PubMed를 이용해 작업
    • BioMart로부터 데이터 검색

  • 2장 Bioconductor 소개
    • 소개
    • Bioconductor로부터 패키지 설치
    • R에서 주석 데이터베이스 다루기
    • ID 전환
    • 유전자 KEGG 주석
    • 유전자 온톨로지(GO) 주석
    • GO 농축
    • 유전자 KEGG 농축
    • 클라우드에서의 Bioconductor

  • 3장 R을 이용한 서열 분석
    • 소개
    • 서열 추출
    • FASTA 파일 읽기와 쓰기
    • 서열 구성의 내용 확인
    • 짝 서열 정렬
    • 다중 서열 정렬
    • 계통 분석과 트리 플로팅
    • BLAST 결과 다루기
    • 서열에서 패턴 확인

  • 4장 R을 이용한 단백질 구조 분석
    • 소개
    • UniProt에서 서열 추출
    • 단백질 서열 분석
    • 단백질 서열 특성 계산
    • PDB 파일 다루기
    • InterPro 도메인 주석으로 작업
    • Ramchandran 플롯의 이해
    • 유사한 단백질 탐색
    • 단백질의 이차 구조 특성을 이용한 작업
    • 단백질 구조의 시각화

  • 5장 R을 이용한 마이크로어레이 데이터 분석
    • 소개
    • CEL 파일 읽기
    • ExpressionSet 객체 만들기
    • AffyBatch 객체 다루기
    • 데이터의 질 확인
    • 인위적 발현 데이터 생성
    • 데이터 정규화
    • 발현 데이터에서 배치 효과 해결
    • 주성분 분석을 이용한 탐색적 분석
    • 차별 발현 유전자 확인
    • 다중 클래스 데이터로 작업
    • 시계열 데이터 다루기
    • 마이크로어레이 데이터의 배율 변화
    • 데이터의 기능적 농축
    • 마이크로어레이 데이터 군집화
    • 마이크로어레이 데이터로부터 공발현 네트워크 형성
    • 유전자 발현 데이터의 시각화

  • 6장 전장유전체 연관 분석(GWAS) 데이터 분석
    • 소개
    • 단일 염기 다형성 연관 분석
    • 단일 염기 다형성에 대한 연관성 탐색
    • 전체 유전체 단일 염기 다형성 연관 분석
    • PLINK 전장유전체 연관 분석 데이터 불러오기
    • GWASTools 패키지를 이용해 데이터 다루기
    • 다른 전장유전체 연관 분석 데이터 형식 다루기
    • 단일 염기 다형성 주석화와 농축
    • Hardy-Weinberg 평형에 대한 데이터 검정
    • 단위 반복 변이 데이터를 이용한 연관 분석
    • 전장유전체 연관 분석의 시각화

  • 7장 질량 분석 데이터 분석
    • 소개
    • mzXML/mzML 형식의 MS 데이터 읽기
    • Burker 형식의 MS 데이터 읽기
    • mzXML 형식의 MS 데이터를 MALDIquant 형식으로 전환
    • MS 데이터 객체로부터 데이터 요소 추출
    • MS 데이터 전처리
    • MS 데이터에서 피크 검출
    • MS 데이터의 피크 정렬
    • MS 데이터에서 펩타이드 확인
    • 단백질 양적 분석 시행
    • MS 데이터에서에서 다중 집단 분석 시행
    • MS 데이터 분석의 시각화

  • 8장 차세대 시퀀싱 데이터 분석
    • 소개
    • SRA 데이터베이스 쿼리
    • SRA 데이터베이스로부터 데이터 다운로드
    • R에서 FASTQ 파일 읽기
    • 정렬 데이터 읽기
    • 차세대 시퀀싱 원 데이터 전처리
    • edgeR 패키지를 사용한 RNAseq 데이터 분석
    • limma를 사용한 시퀀싱 데이터의 층별 분석
    • 유전자 온톨로지 용어를 사용한 RNAseq 데이터 농축
    • 서열 데이터의 KEGG 농축
    • 메틸화 데이터의 분석
    • ChipSeq 데이터 분석
    • 차세대 시퀀싱 데이터 시각화

  • 9장 생명정보학에서의 기계 학습
    • 소개
    • k-means와 계층적 군집을 이용한 데이터 군집화
    • 군집의 시각화
    • 분류에 대한 지도 학습
    • Naïve Bayes를 이용한 확률적 학습
    • 기계 학습에서 부트스트래핑
    • 분류기에 대한 교차 타당화
    • 분류기의 성능 평가
    • ROC 커브의 시각화
    • 어레이 데이터를 이용한 생체지표 확인

  • 부록A. R에서 유용한 연산자와 함수
  • 부록B. 유용한 R 패키지

도서 오류 신고

도서 오류 신고

에이콘출판사에 관심을 가져 주셔서 고맙습니다. 도서의 오탈자 정보를 알려주시면 다음 개정판 인쇄 시 반영하겠습니다.

오탈자 정보는 다음과 같이 입력해 주시면 됩니다.

(예시) p.100 아래에서 3행 : '몇일'동안 -> 며칠동안

정오표

정오표

p4

독일의 프라운호퍼 알고리즘과 과학 컴퓨팅 연구소
->
독일에 위치한 알고리즘과 과학 컴퓨팅 프라운호퍼 연구소

p21

https://www.packtpub.com/sites/default/files/downloads/31320S_ColoredImages.pdf
->
https://www.packtpub.com/sites/default/files/downloads/3132OS_ColoredImages.pdf

p49 그림 수정