[서열분석개론] 서열 분석 - 파일 포맷 (FASTA, FASTQ, BED)

2026. 7. 11. 01:00·Bio Data Analysis/서열분석개론

시퀀싱으로 얻은 데이터를 다루려면 파이프라인 각 단계에서 쓰이는 표준 텍스트 포맷을 알아야 합니다.
FASTA, FASTQ, BED는 생김새가 비슷해 보여도 담고 있는 정보와 용도가 완전히 다르니 헷갈리지 않게 정리했습니다.


FASTA

품질 정보 없이 서열만 담는 가장 단순한 포맷입니다.
주로 레퍼런스 유전체를 표현할 때 씁니다.

>chr21
GATCACAGGTCTATCACCCTATTAACCAC
TCACGGGAGCTCTCCATGCATTTGGTATT
TTCGTCTGGGGGGTATGCACGCGATAGCA

 

구조는 두 부분입니다.

  • 헤더: >로 시작하고 그 뒤에 서열 이름(염색체명, 유전자명 등)이 온다.
  • 서열: A/C/G/T/N으로 구성되고, 보통 60~80자마다 줄바꿈된다.

레퍼런스 파일은 그대로 두고 쓰기보다 인덱스를 만들어서 쓰는 경우가 많습니다.
samtools faidx로 만든 .fai 인덱스가 있으면 파일 전체를 훑지 않고도 원하는 영역에 바로 접근할 수 있습니다.


FASTQ

서열과 품질 정보를 함께 담는 NGS의 기본 단위입니다.
read 하나가 정확히 4줄로 구성됩니다.

@A00984:1:1101:2356:1000 1:N:0:ATCG
GATTTGGGGTTCAAAGCAGTATCGATCAAATAGT
+
!''*((((***+))%%%++)(%%%%).1***-+*

 

줄 내용
1 Sequence ID — instrument, lane, tile, 좌표 정보. @로 시작
2 Sequence — 실제 염기서열 (A/C/G/T/N)
3 Separator — + (뒤에 ID를 다시 적기도 하지만 보통 생략)
4 Quality — 2번째 줄과 같은 길이, 염기별 Phred 점수를 ASCII 문자로 인코딩

 

FASTQ 파일의 read 개수는 전체 줄 수를 4로 나눈 값과 같습니다.

Paired-end라면 R1, R2 파일의 read 개수가 서로 일치해야 합니다.

Phred Quality Score

FASTQ 4번째 줄의 ASCII 문자가 나타내는 값이 Phred 품질 점수입니다.

여기서 P는 그 염기가 틀렸을 확률입니다. Q가 높을수록 신뢰도가 높습니다.

Phred Q 오류 확률(P) 정확도 의미
Q10 1/10 90% 낮음
Q20 1/100 99% 허용 하한선 부근
Q30 1/1000 99.9% 일반적인 품질 기준
Q40 1/10000 99.99% 매우 높음

 

실무에서는 Q30 이상을 신뢰할 수 있는 염기의 기준선으로 보는 경우가 많습니다.

read의 3′ 끝으로 갈수록 품질이 떨어지는 게 일반적인 패턴이라, 이 부분을 트리밍(trimming) 도구로 잘라내는 전처리를 거칩니다.


BED

관심 영역을 좌표 구간으로 표현하는 포맷입니다.

타깃 패널, 엑손 영역처럼 "어디서부터 어디까지"를 나타낼 때 씁니다.

chr21   5010000   5010500
chr21   5011200   5011800   exon2
chr21   45705700 45706000   AIRE

 

탭으로 구분된 3열(chrom, start, end)이 최소 형식이고, 4번째 열에 이름을 추가로 붙일 수 있습니다.

BED 좌표계에서 꼭 기억해야 할 두 가지가 있습니다.

  • 0-based: 시작 좌표가 0부터 시작. VCF나 GFF는 1-based라서 서로 다르다
  • half-open: [start, end) 구간이라 end 좌표 자체는 포함하지 않는다

이 좌표계 차이 때문에 포맷 간 변환 시 off-by-one 오류가 자주 발생합니다.

예를 들어 GFF(1-based)에서 BED(0-based)로 변환할 때는 start 값에서 1을 빼야 합니다.

반대로 잊고 그대로 옮기면 영역이 한 칸씩 밀리는 문제가 생깁니다.

영역 계산이나 필터링에는 bedtools가 표준 도구로 쓰입니다.

구간 교집합, 병합, 커버리지 계산 등을 여기서 처리합니다.


세 포맷을 한 줄로 정리하면:

FASTA는 서열 자체, FASTQ는 서열+품질(read 단위), BED는 좌표 구간 정보입니다.

파이프라인에서 이 세 가지가 각각 어느 단계에 쓰이는지 구분해두면 이후 매핑·변이호출 단계를 이해하기가 훨씬 수월합니다.

'Bio Data Analysis > 서열분석개론' 카테고리의 다른 글

[서열분석개론] 서열 분석 - 주석 및 임상 해석  (0) 2026.07.12
[서열분석개론] 서열 분석 - 변이 호출 파이프라인  (0) 2026.07.12
[서열분석개론] 서열 분석 - 변이의 종류와 표기법  (0) 2026.07.11
[서열분석개론] 서열 분석 - 매핑과 SAM/BAM  (0) 2026.07.11
[서열분석개론] 서열 분석 - 시퀀싱 원리  (0) 2026.07.08
'Bio Data Analysis/서열분석개론' 카테고리의 다른 글
  • [서열분석개론] 서열 분석 - 변이 호출 파이프라인
  • [서열분석개론] 서열 분석 - 변이의 종류와 표기법
  • [서열분석개론] 서열 분석 - 매핑과 SAM/BAM
  • [서열분석개론] 서열 분석 - 시퀀싱 원리
데이터로 읽는 생명
데이터로 읽는 생명
is-note 님의 블로그 입니다.
  • 데이터로 읽는 생명
    In Silico Note
    데이터로 읽는 생명
  • 전체
    오늘
    어제
    • 분류 전체보기 (190)
      • Bio-Knowledge (16)
        • 분자생물학 & 유전학 기초 (0)
        • 전사체학 & 유전자 발현 (0)
        • 구조생물학 & 단백질 (0)
        • 싱글셀 & 다중오믹스 (0)
        • 임상유전학 & 질환 데이터 (0)
      • Programming (4)
        • API (4)
      • BI&Programming-Tools (111)
        • File Formats (14)
        • Linux & Bash Script (38)
        • Python (35)
        • R (11)
        • 통계 (8)
        • Pipeline Manager (0)
        • Etc (5)
      • Bio Data Analysis (28)
        • 서열분석개론 (6)
        • WGS(Whole Genome Seq) (11)
        • WES(Whole Exome Seq) (2)
        • RNA-Seq (4)
        • Metagenome (2)
        • Non-human Resequencing (1)
        • 임상유전체 분석 (1)
        • Multi-Omics (1)
      • Bio-Trends & Tech (1)
      • 코딩테스트 연습 (30)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    R
    FASTQ
    파이썬
    R기초
    파이썬연습
    통계
    bioinformatics
    유전체분석
    파이썬기초
    wgs
    ngs
    파일포맷
    코딩테스트
    리눅스기초
    fasta
    데이터분석
    생물정보학
    리눅스
    분자생물학
    GATK
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.6
데이터로 읽는 생명
[서열분석개론] 서열 분석 - 파일 포맷 (FASTA, FASTQ, BED)
상단으로

티스토리툴바