bedtools Reference
bedtools 게놈 구간 연산(intersect/merge/coverage) 레퍼런스
bedtools Reference 소개
bedtools 레퍼런스는 구간 연산, 커버리지 분석, 근접 검색, 서열 추출, 파일 형식, 유틸리티, 파이프라인 등 7개 카테고리로 분류된 25개 이상의 핵심 bedtools 명령어를 다루는 종합 치트 시트입니다. 각 항목마다 명령어 구문, 기능 설명, 그리고 주요 플래그가 포함된 실제 사용 예제를 제공합니다.
BED, BAM, GFF, BedGraph 파일을 일상적으로 다루는 생물정보학자, 유전체 연구자, 전산 생물학자를 위해 설계되었습니다. ChIP-seq 피크 필터링, RNA-seq 엑손 커버리지 분석, 전체 게놈 변이 주석 작업 등 어떤 분석을 수행하든 검색 인터페이스를 통해 필요한 명령어와 플래그 조합을 즉시 찾을 수 있습니다.
모든 콘텐츠는 서버와의 통신 없이 브라우저에서 바로 렌더링됩니다. 명령어 이름, 설명, 예제 전체를 대상으로 검색할 수 있으며 카테고리별 필터링도 지원합니다. 다크 모드와 반응형 레이아웃으로 데스크톱 워크스테이션부터 연구실 노트북까지 어떤 환경에서도 편하게 사용할 수 있습니다.
주요 기능
- intersect, subtract, merge, complement 등 구간 연산 명령어의 전체 구문과 예제 수록
- bedtools coverage, genomecov, multicov 등 BAM/BED 입력 기반 커버리지 분석 명령어 포함
- closest, window, slop 등 비대칭 및 비율 기반 확장을 지원하는 근접 도구 설명
- getfasta, maskfasta, nuc를 이용한 서열 추출 및 GC 함량 계산 방법 제공
- BED3/BED6/BED12, GFF/GTF, BedGraph 파일 형식 사양과 좌표계 설명
- ChIP-seq 블랙리스트 필터링, RNA-seq 유전자간 영역 추출, WGS 변이 주석 파이프라인 예제
- 구간 연산, 커버리지, 근접, 서열, 형식, 유틸리티, 파이프라인 카테고리별 필터링 지원
- 모든 명령어 이름, 플래그, 예제 코드를 대상으로 한 전문 검색 기능
자주 묻는 질문
이 레퍼런스에는 어떤 bedtools 명령어가 포함되어 있나요?
구간 연산(intersect, subtract, merge, complement), 커버리지 분석(coverage, genomecov, multicov), 근접 도구(closest, window, slop), 서열 추출(getfasta, maskfasta, nuc), 파일 형식 사양(BED, GFF/GTF, BedGraph), 유틸리티(sort, bamtobed, makewindows, groupby), 그리고 ChIP-seq, RNA-seq, WGS 워크플로우의 완전한 파이프라인 예제까지 7개 카테고리 25개 이상의 핵심 명령어를 다룹니다.
bedtools intersect에서 최소 겹침 비율을 어떻게 설정하나요?
-f 플래그를 사용하여 A 구간 대비 최소 겹침 비율을 지정합니다. 예를 들어 "bedtools intersect -a a.bed -b b.bed -f 0.50"은 A 구간의 50% 이상이 B와 겹쳐야 합니다. -r 플래그를 추가하면 상호 겹침 조건이 되고, -e 플래그는 A 또는 B 중 하나만 충족하면 됩니다.
bedtools coverage와 genomecov의 차이점은 무엇인가요?
coverage는 파일 A의 각 구간에 대해 B 파일의 리드 깊이 통계를 계산하며, 구간별 커버된 염기 수와 비율을 보고합니다. genomecov는 게놈 전체 커버리지 깊이를 계산하고 -bg 옵션으로 BedGraph 형식으로 출력할 수 있어, 게놈 브라우저 트랙이나 BigWig 변환에 적합합니다.
BED 영역의 FASTA 서열을 어떻게 추출하나요?
"bedtools getfasta -fi genome.fa -bed regions.bed"로 BED 구간에 해당하는 서열을 추출합니다. -s 플래그로 가닥 방향을 반영하고(마이너스 가닥은 역상보), -name 플래그로 좌표 대신 BED name 열을 FASTA 헤더에 사용할 수 있습니다.
bedtools merge는 왜 정렬된 입력이 필요한가요?
merge는 구간을 순차적으로 처리하여 겹치거나 인접한 영역을 병합합니다. 염색체와 시작 위치로 정렬된 입력이 있어야 모든 겹치는 구간이 파일에서 연속적으로 나타나 단일 패스로 병합할 수 있습니다. "sort -k1,1 -k2,2n" 또는 "bedtools sort"로 먼저 정렬한 후 merge에 파이프하세요.
BED 파일은 어떤 좌표계를 사용하나요?
BED 파일은 0-based, half-open 좌표계를 사용합니다. 시작 위치는 0부터 시작하며 포함이고, 끝 위치는 배제됩니다. 예를 들어 chr1의 첫 100개 염기는 "chr1 0 100"으로 표현됩니다. 이는 1-based, fully-closed 좌표계를 사용하는 GFF/GTF와 다릅니다.
ChIP-seq 피크에서 블랙리스트 영역을 어떻게 제거하나요?
"bedtools intersect -a peaks.narrowPeak -b blacklist.bed -v"를 사용합니다. -v 플래그는 B와 겹치지 않는 A 구간만 반환하므로, 블랙리스트 게놈 영역에 해당하는 모든 피크가 효과적으로 제거됩니다.
여러 샘플의 커버리지를 한번에 분석할 수 있나요?
bedtools multicov가 이 용도에 적합합니다. 여러 BAM 파일과 BED 구간 파일을 입력받아 각 구간에 대한 BAM별 리드 수를 보고합니다. "bedtools multicov -bams s1.bam s2.bam s3.bam -bed peaks.bed"를 실행하면 각 BED 구간에 BAM 파일 수만큼 리드 수 열이 추가됩니다.