logo
logo
x
바코드검색
BOOKPRICE.co.kr
책, 도서 가격비교 사이트
바코드검색

인기 검색어

실시간 검색어

검색가능 서점

도서목록 제공

생물정보학을 위한 파이썬

생물정보학을 위한 파이썬

(유연한 파이썬 코드 작성, 테스트, 리팩토링)

켄 유엔스 클락 (지은이), 황태웅 (옮긴이)
에이콘출판
45,000원

일반도서

검색중
서점 할인가 할인률 배송비 혜택/추가 실질최저가 구매하기
40,500원 -10% 0원
2,250원
38,250원 >
yes24 로딩중
교보문고 로딩중
11st 로딩중
영풍문고 로딩중
쿠팡 로딩중
쿠팡로켓 로딩중
G마켓 로딩중
notice_icon 검색 결과 내에 다른 책이 포함되어 있을 수 있습니다.

중고도서

검색중
서점 유형 등록개수 최저가 구매하기
로딩중

eBook

검색중
서점 정가 할인가 마일리지 실질최저가 구매하기
로딩중

책 이미지

생물정보학을 위한 파이썬
eBook 미리보기

책 정보

· 제목 : 생물정보학을 위한 파이썬 (유연한 파이썬 코드 작성, 테스트, 리팩토링)
· 분류 : 국내도서 > 컴퓨터/모바일 > 프로그래밍 언어 > 파이썬
· ISBN : 9791161758022
· 쪽수 : 576쪽
· 출판일 : 2023-11-29

책 소개

파이썬으로 생물정보학 데이터를 분석하는 법을 배운다. 생물정보학에서 중요한 계산, 즉 뉴클레오티드 빈도 계산, mRNA 번역, DNA 역상보체 구하기, GC함량 계산, DNA의 모티프 찾기, ORF 프레임 찾기 등을 파이썬 코드로 구현하는 방법을 알아본다.

목차

1부. Rosalind.info 챌린지

1장. 테트라뉴클레오타이드 빈도: 빈도수 계산
__시작하기
____new.py를 사용해 새 프로그램 만들기
____argparse 사용하기
____코드의 오류를 찾기 위한 개발 툴
____명명된 튜플 소개
____명명된 튜플에 타입 추가하기
____NamedTuple로 인수 표현하기
____커맨드 라인 또는 파일에서 입력값 읽기
____프로그램 테스트하기
____출력 테스트하기 위해 프로그램 실행하기
__솔루션
____솔루션 1: 문자열의 문자 반복과 계산
____뉴클레오타이드 계산하기
____솔루션 작성 및 검증
__추가적인 솔루션
____솔루션 2: count() 함수 생성과 단위 테스트 추가하기
____솔루션 3: str.count() 사용하기
____솔루션 4: 딕셔너리를 사용해 모든 문자 계산하기
____솔루션 5: 원하는 염기만 계산하기
____솔루션 6: collections.defaultdict() 사용하기
____솔루션 7: collections.Counter() 사용하기
__더 나아가기
__요점 정리

2장. DNA를 mRNA로 변환: 문자열 변경, 파일 읽기와 쓰기
__시작하기
____프로그램의 매개 변수 정의
____선택적 매개 변수 정의
____하나 이상의 필수 위치 매개 변수 정의하기
____nargs를 사용해 인수의 수 정의하기
____argparse.FileType()을 사용해 파일 인수의 유효성 검사하기
____Args 클래스 정의하기
____의사 코드를 사용한 프로그램 개요
____입력 파일 반복
____출력 파일 이름 생성하기
____출력 파일 열기
____출력 염기 서열 쓰기
____상태 보고서 출력하기
____테스트 모음 사용하기
__솔루션
____솔루션 1: str.replace() 사용하기
____솔루션 2: re.sub() 사용하기
__벤치마킹하기
__더 나아가기
__요점 정리

3장. DNA 역상보체: 문자열 조작
__시작하기
____역문자열을 반복하기
____의사결정 트리 만들기
____리팩토링하기
__솔루션
____솔루션 1: for 루프와 의사결정 트리 사용하기
____솔루션 2: 딕셔너리 검색 사용하기
____솔루션 3: 리스트 컴프리헨션 사용하기
____솔루션 4: str.translate() 사용하기
____솔루션 5: Bio.Seq 사용하기
__요점 정리

4장. 피보나치 수열 만들기: 알고리듬 작성, 테스트, 벤치마킹하기
__시작하기
__명령적 접근법
__솔루션
____솔루션 1: 리스트를 스택으로 사용하는 명령적 솔루션
____솔루션 2: 생성자 함수 만들기
____솔루션 3: 재귀 및 메모이제이션 사용하기
__솔루션 벤치마킹하기
__좋은 테스트, 나쁜 테스트, 못생긴 테스트
__모든 솔루션에서 테스트 모음집 실행하기
__더 나아가기
__요점 정리

5장. GC 함량 계산하기: FASTA 파싱하고 염기 서열 분석하기
__시작하기
____바이오파이썬을 사용해 FASTA 구문 분석하기
____루프를 사용해 염기 서열 반복하기
__솔루션
____솔루션 1: 리스트 사용하기
____솔루션 2: 타입 주석과 단위 테스트
____솔루션 3: 실행 중인 최대 변수 유지하기
____솔루션 4: 리스트 컴프리헨션인 Guard를 사용하기
____솔루션 5: filter() 함수 사용하기
____솔루션 6: map() 함수와 합산 부울 사용하기
____솔루션 7: 정규식을 사용해서 패턴 찾기
____솔루션 8: 더 복잡한 find_gc() 함수
__벤치마킹하기
__더 나아가기
__요점 정리

6장. 해밍 거리 찾기: 점 돌연변이 계산하기
__시작하기
____두 문자열의 문자 반복
__솔루션
____솔루션 1: 반복과 계산
____솔루션 2: 단위 테스트 작성하기
____솔루션 3: zip() 함수 사용하기
____솔루션 4: zip_longest() 함수 사용하기
____솔루션 5: 리스트 컴프리헨션 사용하기
____솔루션 6: filter() 함수 사용하기
____솔루션 7: zip_longest()와 map() 함수 사용하기
____솔루션 8: starmap() 함수와 operator.ne() 함수 사용하기
__더 나아가기
__요점 정리

7장. mRNA를 단백질로 변환하기: 더 많은 함수형 프로그래밍
__시작하기
____K-mer와 코돈
____코돈 번역
__솔루션
____솔루션 1: for 루프 사용하기
____솔루션 2: 단위 테스트 추가하기
____솔루션 3: 또 다른 함수와 리스트 컴프리헨션
____솔루션 4: map(), partial(), takewhile() 함수를 사용한 함수형 프로그래밍
____솔루션 5: Bio.Seq.translate() 사용하기
__벤치마킹하기
__더 나아가기
__요점 정리

8장. DNA에서 모티프 찾기: 염기 서열 유사성 탐색하기
__시작하기
____부분 염기 서열 찾기
__솔루션
____솔루션 1: str.find() 메서드 사용하기
____솔루션 2: str.index() 메서드 사용하기
____솔루션 3: 순수한 기능적 접근 방식
____솔루션 4: k-mer 사용하기
____솔루션 5: 정규식을 사용해 겹치는 패턴 찾기
__벤치마킹하기
__더 나아가기
__요점 정리

9장. 중첩 그래프: 공유 K-mer를 사용한 염기 서열 조립
__시작하기
____STDOUT, STDERR, 로깅을 사용한 런타임 메시지 관리하기
____중첩 찾기
____중첩된 염기 서열 그룹화하기
__솔루션
____솔루션 1: 교차로 설정을 사용해 중복 찾기
____솔루션 2: 그래프를 사용해서 모든 경로 찾기
__더 나아가기
__요점 정리

10장. 가장 긴 공유 부분 염기 서열 찾기: k-mer 찾기, 함수 작성, 이진 탐색 사용
__시작하기
____FASTA 파일에서 가장 짧은 염기 서열 찾기
____염기 서열에서 k-mer 추출하기
__솔루션
____솔루션 1: k-mer의 빈도수 세기
____솔루션 2: 이진 탐색으로 속도 향상시키기
__더 나아가기
__요점 정리

11장. 단백질 모티프 찾기: 데이터 가져오기 및 정규식 사용하기
__시작하기
____커맨드 라인에서 염기 서열 파일 다운로드
____파이썬으로 염기 서열 파일 다운로드하기
____모티프를 찾기 위한 정규 표현식 작성하기
__솔루션
____솔루션 1: 정규식 사용
____솔루션 2: 수동 솔루션 작성하기
__더 나아가기
__요점 정리

12장. 단백질에서 mRNA 유추하기: 리스트의 곱셈과 리스트 줄이기
__시작하기
____리스트의 곱 만들기
____나머지 연산 곱셈으로 오버플로 방지하기
__솔루션
____솔루션 1: RNA 코돈 테이블 딕셔너리 사용하기
____솔루션 2: 비트 전환
____솔루션 3: 최소 정보 인코딩하기
__더 나아가기
__요점 정리

13장. 위치 제한 부위: 코드 사용, 코드 테스트, 코드 공유
__시작하기
____k-mer를 사용한 모든 부분 염기 서열 찾기
____모든 역상보체 찾기
____모든 것을 합치기
__솔루션
____솔루션 1: zip()과 enumerate() 함수 사용하기
____솔루션 2: operator.eq() 함수를 사용하기
____솔루션 3: revp() 함수 작성하기
__프로그램 테스트하기
__더 나아가기
__요점 정리

14장. 열린 번역 프레임 찾기
__시작하기
____각 프레임 내부의 단백질 번역
____단백질 서열에서 ORF 찾기
__솔루션
____솔루션 1: str.index() 함수 사용하기
____솔루션 2: str.partition() 함수 사용하기
____솔루션 3: 정규식 사용하기
__더 나아가기
__요점 정리

2부. 다른 프로그램

15장. Seqmagique: 보고서 생성과 형식 지정
__Seqmagick을 사용해서 염기 서열 파일 분석하기
__MD5 해시를 사용해서 파일 확인하기
__시작하기
____tabulate()를 사용해서 텍스트 테이블 서식 지정하기
__솔루션
____솔루션 1: tabulate()로 형식 지정하기
____솔루션 2: rich로 형식 지정하기
__더 나아가기
__요점 정리

16장. FASTX grep: 염기 서열을 선택하기 위한 유틸리티 프로그램 만들기
__grep을 사용해서 파일에서 줄 찾기
__FASTQ 레코드의 구조
__시작하기
____파일 형식 추측하기
__솔루션
____파일 확장명에서 파일 형식 추측하기
____계획이 함께 올 때가 좋다
____정규식 검색 플래그 결합하기
____부울 값 줄이기
__더 나아가기
__요점 정리

17장. DNA 합성기: 마르코프 체인으로 합성 데이터 생성하기
__마르코프 체인의 이해
__시작하기
____무작위 시드 이해하기
____훈련 파일 읽기
____염기 서열 생성하기
____프로그램 구조화
__솔루션
__더 나아가기
__요점 정리

18장. FASTX 샘플러: 염기 서열 파일 무작위 서브샘플링
__시작하기
____프로그램 매개 변수 검토하기
____매개 변수 정의하기
____비결정적 샘플링하기
____프로그램 구성하기
__솔루션
____솔루션 1: 일반 파일 읽기
____솔루션 2: 많은 압축 파일 읽기
__더 나아가기
__요점 정리

19장. Blastomatic: 구분된 텍스트 파일 구문 분석
__BLAST 소개
__csvkit과 csvchk 사용하기
__시작하기
____인수 정의
____csv 모듈을 사용해서 구분된 텍스트 파일 구문 분석
____pandas 모듈을 사용해서 구분된 텍스트 파일 구문 분석
__솔루션
____솔루션 1: 딕셔너리를 사용해서 수동으로 테이블 조인하기
____솔루션 2: csv.DictWriter()를 사용해서 출력 파일 쓰기
____솔루션 3: pandas를 사용해서 파일 읽기와 쓰기
____솔루션 4: pandas를 사용해서 파일 조인하기
__더 나아가기
__요점 정리

부록 A. make를 사용해서 명령 문서화와 워크플로 생성하기
부록 B. $PATH 이해하고 커맨드 라인 프로그램 설치하기

저자소개

켄 유엔스-클라크 (지은이)    정보 더보기
소프트웨어 개발자이자 교육자 및 작가. 노스 텍사스 대학교에서 학부에 들어가 재즈(드럼)를 연구하다 여러 번 전공을 바꿔 결국 영문학 학사를 땄다. 1990년대 중반부터 직장에서 코딩을 배워 산업계, 학계, 비영리단체에서 일했다. 2019년 애리조나 대학교에서 바이오시스템 공학 석사 학위를 받았다. 저서로 《21개의 작고 재미난 파이썬 프로젝트》(제이펍, 2021) 등이 있다.
펼치기
황태웅 (옮긴이)    정보 더보기
고등학교 때 생물이 재밌어서 경희대학교 유전공학과에 입학했고, 2학년 때 '생물정보학을 위한 파이썬'이라는 전공 과목을 듣고 생물과 코딩의 조합에 빠져 생물정보학을 공부하게 됐다. 더 깊게 공부하고 싶어서 식물유전체학 연구실에서 벼를 키우며 생물정보학을 배웠다. 실험실에서는 리눅스 시스템 내에서 파이썬과 R로 분석해 연구를 진행했다. 생물정보학을 배우다 보니 유전자에 관한 지식보다는 소프트웨어 코딩에 조금 더 관심을 갖게 됐고, 웹 프로그래머가 되고자 독학을 해서 웹 개발자로 취직했다. 현재는 롯데정보통신 회사에서 소프트웨어 개발자로 일하는 중이며, 앱 개발도 배워 여러 개발을 해보고 싶다는 생각을 하고 있다.
펼치기
이 포스팅은 쿠팡 파트너스 활동의 일환으로,
이에 따른 일정액의 수수료를 제공받습니다.
이 포스팅은 제휴마케팅이 포함된 광고로 커미션을 지급 받습니다.
도서 DB 제공 : 알라딘 서점(www.aladin.co.kr)
최근 본 책