6 분 소요

이 장에서 배울 것

이번 장에서는 변이 분석 파이프라인(variant analysis pipeline)을 배웁니다. 변이는 DNA 서열에서 기준과 다른 부분입니다. 예를 들어 기준 유전체의 어떤 위치가 A인데 어떤 사람의 DNA에서는 G라면, 그 위치에 변이가 있다고 말할 수 있습니다.

핵심 용어를 먼저 정리하겠습니다.

  • 변이(variant): 기준 서열과 다른 DNA 차이입니다.
  • 변이 검출(variant calling): read 데이터를 보고 변이가 있는 위치를 찾는 작업입니다.
  • 기준 유전체(reference genome): 비교 기준으로 사용하는 유전체 서열입니다.
  • 정렬(alignment): read를 기준 유전체의 위치에 붙이는 작업입니다.
  • BAM: read 정렬 결과를 저장하는 압축된 바이너리 파일입니다.
  • 중복 read(duplicate read): PCR 같은 과정 때문에 같은 조각이 여러 번 복사되어 보이는 read입니다.
  • 필터링(filtering): 품질이 낮거나 믿기 어려운 변이 후보를 걸러내는 작업입니다.
  • 주석(annotation): 변이가 어떤 유전자에 있고 어떤 영향을 줄 수 있는지 설명을 붙이는 작업입니다.
  • 생식세포 변이(germline variant): 부모에게서 물려받거나 생식세포 계열에 있는 변이입니다.
  • 체세포 변이(somatic variant): 암세포처럼 특정 세포 집단에서 후천적으로 생긴 변이입니다.

변이 분석 파이프라인

가장 쉬운 비유: 원본 문서와 복사본 비교하기

기준 유전체를 원본 문서라고 생각해 봅시다. 시퀀싱 read는 복사본에서 잘라낸 짧은 문장 조각입니다. 우리는 조각들을 원본 문서에 맞춰 붙이고, 원본과 다른 글자를 찾습니다. 글자가 하나 바뀐 곳, 글자가 빠진 곳, 글자가 추가된 곳이 변이 후보입니다.

변이 분석은 이 비교를 매우 큰 규모로 하는 작업입니다. 사람 유전체는 길이가 약 30억 염기쌍이므로 컴퓨터가 필요합니다.

전체 흐름 한눈에 보기

변이 분석은 보통 다음 흐름으로 진행됩니다.

FASTQ 파일
→ 품질관리(QC)
→ 기준 유전체에 read 정렬
→ SAM/BAM 변환과 정렬
→ 중복 표시
→ 변이 검출
→ 변이 필터링
→ 변이 주석 달기
→ 결과 해석

이 흐름을 외울 필요는 없지만, “read를 기준 유전체에 붙인 뒤 차이를 찾는다”는 큰 그림은 반드시 잡아야 합니다.

1단계: read 정렬

먼저 read를 기준 유전체에 붙입니다. 대표적인 도구로 BWA가 있습니다.

bwa mem reference.fa sample.fastq.gz > sample.sam

이 명령은 sample.fastq.gz의 read를 reference.fa에 정렬하고, 결과를 sample.sam에 저장합니다. SAM은 사람이 읽을 수 있는 텍스트 형식이지만 파일이 큽니다. 그래서 보통 BAM으로 바꿔 사용합니다.

samtools view -b sample.sam > sample.bam

2단계: BAM 정렬과 색인

BAM 파일 안의 read를 유전체 위치 순서대로 정렬하면 이후 작업이 빨라집니다.

samtools sort sample.bam -o sample.sorted.bam
samtools index sample.sorted.bam

색인(index)은 책의 찾아보기와 비슷합니다. 파일 전체를 처음부터 끝까지 훑지 않고도 특정 위치를 빠르게 찾게 해 줍니다.

3단계: 중복 read 표시

실험 과정에서 같은 DNA 조각이 여러 번 복사되면 실제보다 read가 많이 나온 것처럼 보일 수 있습니다. 이를 중복 read라고 합니다. 중복을 표시하거나 제거하면 변이 검출이 더 안정적일 수 있습니다.

중요한 점은 중복 표시가 “무조건 나쁜 read를 버린다”는 뜻이 아니라는 것입니다. 실험 종류와 분석 목적에 따라 처리 방식이 달라질 수 있습니다.

4단계: 변이 검출

변이 검출은 각 위치에서 기준 유전체와 read들이 얼마나 일치하는지 보고 차이를 찾는 작업입니다. 예를 들어 어떤 위치에서 read 20개 중 18개가 G를 보여주고 기준이 A라면, 그 위치는 A→G 변이 후보일 수 있습니다.

아주 단순한 생각은 다음과 같습니다.

기준: A
read들: G, G, G, G, A, G, G, G ...
해석: 이 위치에 A가 G로 바뀐 변이 후보가 있을 수 있다.

실제 도구는 품질 점수, read 방향, 주변 서열, 오류 가능성 등을 함께 고려합니다.

5단계: VCF 파일 이해

변이 결과는 보통 VCF 파일로 저장됩니다.

CHROM  POS     REF  ALT
chr1   12345   A    G

뜻은 chr112345 위치에서 기준 염기 A가 대체 염기 G로 관찰되었다는 것입니다. 실제 VCF에는 품질 점수, 필터 상태, 샘플별 genotype 정보가 더 들어갑니다.

6단계: 필터링

모든 변이 후보가 진짜 변이는 아닙니다. 시퀀싱 오류, 정렬 오류, 낮은 품질 때문에 가짜 변이가 생길 수 있습니다. 필터링은 이런 후보를 줄이는 과정입니다.

예를 들어 다음 기준을 생각할 수 있습니다.

read가 너무 적게 덮은 위치 → 신뢰 낮음
품질 점수가 너무 낮은 변이 → 신뢰 낮음
특정 방향 read에서만 보이는 변이 → 오류 가능성 있음

7단계: 주석 달기

변이를 찾았다고 끝이 아닙니다. 그 변이가 어떤 의미인지 붙여야 합니다. 이것을 주석이라고 합니다.

예를 들어 다음 질문을 던질 수 있습니다.

이 변이는 어느 유전자 안에 있는가?
단백질 아미노산을 바꾸는가?
이미 질병 데이터베이스에 보고된 변이인가?
흔한 변이인가, 드문 변이인가?

변이 주석은 생물학적 해석의 핵심입니다. 단순히 차이를 찾는 것과 질병 가능성을 해석하는 것은 다른 일입니다.

생식세포 변이와 체세포 변이

생식세포 변이 분석은 보통 개인이 태어날 때부터 가진 변이를 찾습니다. 희귀질환, 약물 반응, 유전적 위험도 분석과 연결됩니다.

체세포 변이 분석은 암 연구에서 중요합니다. 암세포는 몸의 정상세포와 다른 변이를 축적할 수 있습니다. 이때 종양 샘플과 정상 샘플을 비교해 암세포에서만 생긴 변이를 찾기도 합니다.

실전 보강: read depth와 allele fraction

변이 분석에서는 “기준과 다른 글자가 보였다”만으로는 충분하지 않습니다. 얼마나 많은 read가 그 위치를 지지하는지 봐야 합니다. 이것을 read depth라고 합니다.

위치 100번
전체 read depth = 20
REF(A)를 지지하는 read = 12
ALT(G)를 지지하는 read = 8

이때 ALT allele fraction은 다음처럼 계산할 수 있습니다.

ALT allele fraction = ALT read 수 / 전체 read 수 = 8 / 20 = 0.4 = 40%

read depth가 3인데 그중 1개가 ALT라면 33%처럼 보일 수 있지만, read 수가 너무 적어 우연이나 오류의 영향이 큽니다. 반대로 depth가 100이고 ALT가 50이면 더 안정적인 근거가 됩니다.

실전 보강: genotype과 tumor-normal 비교

생식세포 변이에서는 한 위치의 유전형을 0/0, 0/1, 1/1처럼 표현하는 일이 많습니다.

0/0: 기준 allele만 관찰됨
0/1: 기준 allele과 대체 allele이 함께 관찰됨
1/1: 대체 allele만 관찰됨

암 변이 분석에서는 더 복잡합니다. 암 조직에서 보이는 변이가 정상 조직에도 있으면 원래 타고난 생식세포 변이일 가능성이 있습니다. 암 조직에만 강하게 보이면 체세포 변이 후보가 됩니다. 그래서 암 분석에서는 tumor-normal pair를 함께 비교하는 일이 중요합니다.

초보자가 자주 하는 오해

  • 오해 1: 기준 유전체와 다르면 모두 병적 변이다. 사람마다 정상적인 유전적 차이가 많습니다.
  • 오해 2: VCF에 있으면 무조건 진짜 변이다. VCF는 후보 목록입니다. depth, 품질, allele fraction, 주석을 함께 봐야 합니다.
  • 오해 3: read 하나가 ALT를 보이면 변이다. 한두 개 read는 시퀀싱 오류일 수 있습니다.
  • 오해 4: 체세포 변이와 생식세포 변이는 파일 형식만 다르다. 실제 해석 목적과 비교 대상이 다릅니다.

이전 개념과 다음 개념의 연결

변이 분석은 FASTQ와 QC라는 점에서 E13 RNA-seq과 출발점이 비슷하지만, 최종 산출물은 count matrix가 아니라 VCF입니다. 변이 주석은 E18 API/데이터 수집, 대규모 BAM/VCF 관리는 E22 HPC와 E24 재현성, 환자-샘플-변이 연결은 E17 SQL 사고와 이어집니다.

생물정보학에서 왜 중요한가

변이 분석은 유전질환, 암 유전체, 약물유전체학, 인구집단 연구에서 핵심입니다. 변이 분석 파이프라인을 이해하면 VCF 파일이 단순한 표가 아니라, 실험과 계산 단계를 거쳐 만들어진 해석 대상이라는 점을 알 수 있습니다.

어려운 개념 보강: VCF 한 줄과 VAF 계산 읽기

변이 분석 결과는 VCF 파일로 자주 저장됩니다. VCF 한 줄은 “어느 위치에서 기준과 다른 염기가 관찰되었는가”를 압축해 적은 기록입니다.

#CHROM  POS   ID  REF  ALT  QUAL  FILTER  INFO
chr1    1050  .   A    G    60    PASS    DP=30;AD=20,10

각 칸의 의미는 다음과 같습니다.

  • CHROM: 염색체 이름입니다. 여기서는 chr1입니다.
  • POS: 기준 유전체에서의 위치입니다. 여기서는 1050번 위치입니다.
  • REF: 기준 유전체의 염기입니다. 여기서는 A입니다.
  • ALT: 샘플에서 관찰된 대체 염기입니다. 여기서는 G입니다.
  • QUAL: 변이 후보의 품질 점수입니다. 클수록 대체로 더 믿을 만하지만, 무조건 참이라는 뜻은 아닙니다.
  • FILTER: 필터 통과 여부입니다. PASS면 기본 필터를 통과했다는 뜻입니다.
  • INFO: read 깊이, allele depth 같은 추가 정보입니다.

DP=30은 그 위치를 덮은 read가 총 30개라는 뜻으로 해석할 수 있습니다. AD=20,10은 REF를 지지하는 read가 20개, ALT를 지지하는 read가 10개라는 뜻으로 쓰이는 경우가 많습니다. 도구마다 세부 표기는 다를 수 있으므로 헤더 설명을 확인해야 합니다.

VAF(variant allele fraction)는 ALT를 지지하는 read 비율입니다.

VAF = ALT read 수 / 전체 read 수

위 예시에서는 다음과 같습니다.

VAF = 10 / 30 = 0.333... ≈ 33.3%

생물정보학에서 VAF는 변이를 해석할 때 중요한 단서입니다. 생식세포 변이에서 이형접합 변이는 대략 50% 근처로 보일 수 있고, 암 체세포 변이는 종양 순도와 클론 구조 때문에 5%, 20%, 40%처럼 다양하게 보일 수 있습니다.

하지만 VAF를 과잉해석하면 안 됩니다. read 수가 너무 적으면 10/30과 1/3이 같은 33%처럼 보여도 신뢰도가 다릅니다. 또 mapping 오류, PCR 중복, 기준 유전체 문제, 주변 반복서열 때문에 가짜 변이가 생길 수 있습니다. 그래서 VCF 한 줄은 결론이 아니라 “검토해야 할 후보 기록”입니다.

미니 실습 블록: variant calling 흐름과 VCF 한 줄 해석하기

이 실습은 variant calling 흐름과 VCF 한 줄 해석하기를 직접 손으로 확인하는 연습입니다. 왜 필요한가 하면, 변이 분석은 FASTQ에서 VCF까지 여러 중간 파일을 만들며, 마지막 VCF의 필드를 읽을 수 있어야 결과를 해석할 수 있기 때문입니다.

FASTQ
→ QC/trimming
→ reference genome 정렬
→ sorted/indexed BAM
→ duplicate marking
→ variant calling
→ VCF filtering
→ annotation
→ report

각 코드 요소의 의미를 풀어보면 다음과 같습니다. 정렬된 BAM에서 reference와 다른 염기를 후보 변이로 찾고, 품질 필터를 거쳐 VCF로 저장합니다. annotation은 변이가 어느 유전자나 기능 구간에 있는지 붙이는 단계입니다.

생물정보학/계산생물학에서 쓰이는 장면은 분명합니다. WGS/WES에서 SNP와 indel을 찾거나 암 샘플의 somatic variant를 조사할 때 쓰입니다.

흔한 오해 또는 주의점도 있습니다. VCF의 변이는 곧바로 질병 원인이 아닙니다. coverage, quality, allele fraction, annotation을 함께 봐야 합니다.

핵심 정리

변이 분석은 FASTQ read를 기준 유전체에 정렬하고, 기준과 다른 위치를 찾아 VCF로 정리한 뒤, 품질 필터링과 주석을 거쳐 해석하는 과정입니다. 핵심은 “차이를 찾는 것”과 “그 차이의 의미를 해석하는 것”을 구분하는 것입니다.

문제 풀이

변이 분석 파이프라인

0 / 42
Gemini AI 채점

주관식 답안은 Gemini API로 채점합니다. API 키는 이 브라우저에만 저장됩니다.

API KEY 미등록
  1. 1. [객관식] 객관식

    변이 분석의 큰 목표로 적절한 것은?

    선택지
  2. 2. [객관식] 객관식

    기준 유전체(reference genome)의 역할로 적절한 것은?

    선택지
  3. 3. [객관식] 객관식

    BAM 파일의 설명으로 적절한 것은?

    선택지
  4. 4. [객관식] 객관식

    변이 검출(variant calling)의 설명으로 적절한 것은?

    선택지
  5. 5. [객관식] 객관식

    samtools sort sample.bam -o sample.sorted.bam의 역할에 가까운 것은?

    선택지
  6. 6. [객관식] 객관식

    색인(index)을 만드는 이유로 적절한 것은?

    선택지
  7. 7. [객관식] 객관식

    VCF 한 줄 chr1 12345 A G의 뜻에 가까운 것은?

    선택지
  8. 8. [객관식] 객관식

    변이 필터링의 목적은?

    선택지
  9. 9. [객관식] 객관식

    변이 주석(annotation)의 설명으로 적절한 것은?

    선택지
  10. 10. [객관식] 객관식

    생식세포 변이에 대한 설명으로 적절한 것은?

    선택지
  11. 11. [객관식] 객관식

    체세포 변이에 대한 설명으로 적절한 것은?

    선택지
  12. 12. [객관식] 객관식

    중복 read를 표시하는 이유로 적절한 것은?

    선택지
  13. 13. [객관식] 객관식

    변이 분석 흐름에서 정렬 다음에 자주 나오는 파일 형식은?

    선택지
  14. 14. [객관식] 객관식

    read 깊이가 너무 낮은 위치의 변이가 신뢰 낮을 수 있는 이유는?

    선택지
  15. 15. [객관식] 객관식

    변이 분석에서 “차이를 찾는 것” 다음에 필요한 태도는?

    선택지
  16. 16. [객관식] 객관식

    BWA의 대표적 용도에 가까운 것은?

    선택지
  17. 17. [객관식] 객관식

    정상 샘플과 종양 샘플을 비교하는 분석이 특히 중요한 분야는?

    선택지
  18. 18. [객관식] 객관식

    VCF의 REF와 ALT에 대한 설명으로 적절한 것은?

    선택지
  19. 19. [객관식] 객관식

    변이 분석 파이프라인에서 필터링 전에 보통 필요한 것은?

    선택지
  20. 20. [객관식] 객관식

    변이 주석에서 던질 질문으로 적절한 것은?

    선택지
  21. 21. [객관식] 객관식

    한 변이 위치에서 전체 read depth가 40이고 ALT를 지지하는 read가 10개다. ALT allele fraction은?

    선택지
  22. 22. [객관식] 객관식

    depth 3에서 ALT read 1개인 후보와 depth 80에서 ALT read 40개인 후보를 비교할 때 더 조심해야 하는 것은?

    선택지
  23. 23. [객관식] 객관식

    VCF 한 줄이 chr1 1000 . A G라면 REF와 ALT의 조합으로 옳은 것은?

    선택지
  24. 24. [객관식] 객관식

    정상 조직과 암 조직을 함께 분석했을 때, 정상에는 없고 암 조직에서만 반복적으로 보이는 변이는 무엇의 후보인가?

    선택지
  25. 25. [객관식] 객관식

    genotype 0/1의 입문 수준 해석으로 가장 적절한 것은?

    선택지
  26. 26. [객관식] 객관식

    BAM 파일을 genomic coordinate 기준으로 정렬하고 index를 만드는 이유로 가장 적절한 것은?

    선택지
  27. 27. [객관식] 객관식

    중복 read를 표시하거나 제거하는 이유로 적절한 것은?

    선택지
  28. 28. [객관식] 객관식

    변이 주석(annotation)이 하는 일로 가장 적절한 것은?

    선택지
  29. 29. [객관식] 객관식

    전체 read 100개 중 REF 48개, ALT 52개가 관찰되었다. 생식세포 단일염기 변이 관점의 가장 자연스러운 1차 해석은?

    선택지
  30. 30. [객관식] 객관식

    변이 분석 파이프라인에서 “기준 유전체 버전”을 기록해야 하는 이유는?

    선택지
  31. 31. [실전] 객관식

    variant calling에서 sorted/indexed BAM이 필요한 이유는?

    선택지
  32. 32. [실전] 객관식

    VCF filtering 단계의 목적은?

    선택지
  33. 주관식 33. [응용] 주관식 · Gemini 채점

    변이 분석 파이프라인을 FASTQ에서 변이 주석까지 순서대로 설명하라.

  34. 주관식 34. [응용] 주관식 · Gemini 채점

    VCF 파일이 무엇을 저장하는지 설명하라.

  35. 주관식 35. [응용] 주관식 · Gemini 채점

    색인(index)이 큰 BAM 파일에서 왜 유용한지 설명하라.

  36. 주관식 36. [응용] 주관식 · Gemini 채점

    생식세포 변이와 체세포 변이의 차이를 설명하라.

  37. 주관식 37. [응용] 주관식 · Gemini 채점

    변이 필터링이 필요한 이유를 설명하라.

  38. 주관식 38. [응용] 주관식 · Gemini 채점

    변이 주석이 변이 검출과 다른 이유를 설명하라.

  39. 주관식 39. [응용] 주관식 · Gemini 채점

    read depth 40, ALT read 10인 변이 후보의 ALT allele fraction을 계산하고, depth 3/ALT 1 후보와 비교해 신뢰도 관점에서 설명하라.

  40. 주관식 40. [응용] 주관식 · Gemini 채점

    VCF의 REF/ALT, depth, 주석 정보를 함께 봐야 하는 이유를 설명하라.

  41. 주관식 41. [실습] 주관식 · Gemini 채점

    variant calling 파이프라인을 FASTQ에서 report까지 순서대로 배열하라.

  42. 주관식 42. [실습] 주관식 · Gemini 채점

    VCF의 QUALFILTER를 해석할 때 주의할 점을 설명하라.