콘텐츠로 이동

11. 여러 샘플의 차등발현 검정

샘플 하나에서 발현량이 높아 보여도 개인차인지, 실험 잡음인지, 조건의 효과인지 구분할 수 없습니다. 여러 반복 샘플을 모아 그룹 안의 변동을 측정해야 “통계적으로 다르다”고 말할 수 있습니다.

이 수업의 질문: 여러 샘플의 변동을 고려해 두 그룹의 발현 차이를 어떻게 검정하는가?

배포 전후의 latency를 한 번씩만 측정해서 회귀를 판정할 수 없는 것과 같습니다. 요청마다 값이 달라지는 범위를 먼저 알아야 배포 효과가 평소 변동보다 큰지 판단할 수 있습니다. 차등발현 분석에서는 요청 반복 대신 생물학적 반복 샘플, latency 대신 유전자별 raw count를 사용합니다.

입력 테이블메타데이터모델이 분리할 것출력
유전자 × 샘플 raw count샘플별 실험군·대조군, 배치그룹 차이와 그룹 안 변동유전자별 log2FC, p-value, padj

1. 여러 샘플로: bulk-RNA 차등발현 분석

섹션 제목: “1. 여러 샘플로: bulk-RNA 차등발현 분석”

샘플이 하나뿐인 N=1 분석의 근본 한계는 변동 범위를 추정할 수 없다는 점입니다. 개인차와 실험 환경 차이로 발현량이 달라질 수 있어서, 한 샘플에서 “튀는” 값이 조건의 효과인지 평소 변동인지 통계적으로 분리할 수 없습니다.

그래서 정통(conventional) bulk-RNA 분석은 여러 샘플을 씁니다.

  • 특이적 변화가 replicate에서 재현되는지 확인하고,
  • 정상 대조군과 비교해 유전자별 변화에 통계적 유의성을 부여합니다.
  • 보통 실험군·대조군 각각 최소 n=3(분산을 추정할 수 있는 최소 수)으로 두고, 많을수록 좋습니다. 실험군을 직접 확보하고 대조군은 공개 데이터로 채우기도 합니다(이때 배치 효과 제거 필요).

정렬·정량까지는 앞선 RNA-seq 파이프라인과 같고, 그 뒤에 차등발현(DEG) 분석이 붙습니다.

FastQC → Trim Galore! → FastQC → STAR → featureCounts
→ DEG 분석 (DESeq2 / limma-voom / edgeR)
→ 시각화·기능분석 (Volcano plot, g:Profiler, GSEA)
  • DEG(Differentially Expressed Gene) 분석은 두 그룹(예: Tumor vs Normal)의 발현량을 유전자별로 비교합니다. 입력은 대개 raw count(정규화 전 원시 카운트)입니다.
  • 결과로 유전자마다 Log2FC(그룹 간 발현 배수 변화)와 다중검정을 보정한 padj를 돌려줍니다. baseMean부터 padj까지 각 열의 계산 관계는 DESeq2·PyDESeq2 결과표 읽기에서, p-value와 padj의 일반적인 차이는 통계적 검정과 다중검정에서 설명합니다.
  • 이걸 Volcano plot(x=Log2FC, y=유의성)으로 그리고, 튀는 유전자 집합의 기능을 GSEA·g:Profiler로 해석합니다.

기능분석 결과 예시: dot plot·bar plot·enrichment map

DEG로 고른 유전자들을 기능(pathway)으로 묶어 본 enrichment 시각화 예시(dot plot·bar plot·enrichment map). “어떤 생물학적 프로그램이 두 그룹 사이에서 달라졌나”를 요약한다.

가장 널리 쓰는 DEG 도구 DESeq2는 다음 순서로 분석합니다.

counts.shape # genes × samples
sample_info.shape # samples × conditions
results.shape # genes × statistics

countssample_info는 샘플 ID로 정확히 조인돼야 합니다. 열 순서가 어긋나 실험군 라벨을 다른 샘플에 붙이면 모델은 정상적으로 실행돼도 잘못된 비교를 하므로, 분석 전에 ID와 순서를 검증합니다.

  1. raw count 행렬과 샘플별 조건 정보를 연결한다.
  2. 너무 낮게 발현되는 유전자를 제거해 노이즈를 줄인다.
  3. 샘플별 시퀀싱 깊이를 보정하고 유전자별 변동을 추정한다.
  4. count 데이터에 맞는 모델로 그룹 차이를 검정해 log2FC와 padj를 구한다.
  5. PCA·heatmap에 쓸 수 있도록 분산을 안정화한 값도 만든다.

🧩 왜 raw count인가: TPM은 샘플 내 비율로 바꾼 값입니다. DESeq2는 정수 count의 변동을 직접 모델링하고 자체 방식으로 깊이를 보정해야 하므로 raw count를 입력받습니다. 음이항분포와 반복 샘플의 역할은 DEG에서 무엇을 검정하나에서 자세히 설명합니다.

이렇게 N=1의 아웃라이어 탐색에서 여러 샘플의 통계적 차등발현으로 넘어가면, “이 유전자가 튄다”를 넘어 “통계적으로 유의하게 달라졌다” 고 말할 수 있게 됩니다.

한 코호트의 paired Tumor·Normal 비교는 GSE251845 DEG 실습에서, 두 코호트의 변화량을 따로 계산해 비교하는 과정은 EOCRC·LOCRC 비교 실습에서 이어집니다.

차등발현 분석은 한 샘플의 큰 값을 찾는 작업이 아닙니다. 그룹 안의 변동과 시퀀싱 깊이를 고려해, 조건이 달라졌을 때 일관되게 변한 유전자를 찾는 작업입니다.

반복 샘플 → raw count → 깊이·분산 추정 → 그룹 비교 → log2FC와 유의성 → 기능 분석