Songwan's blog

Statistics graduate school life

Posted by : at

Category : Biostat

s

알림

이 포스팅은 2019년 Harvard STAT115강의를 요약한 것임을 알려드립니다.


다룰 토픽

  • Differential expression : Fold change, T* test on normally distributed data, empirical Bayes method
  • Multiple test adjustment : FWER, FDR

Heatmap : Expression level visualization

다음 그림은 암의 종류 (ALL, AMLL)에 따른 gene expression level을 그림으로 나타낸 것이다. 각 행은 gene을, 열은 sample을 의미하며, 빨간색으로 갈 수록 expression level이 높고, 파란색으로 갈 수록 expression level이 낮다고 볼 수 있다. 주의해야 할 점은 row의 ordering이 매우 중요하다는 것이다. 어떻게 ordering을 하느냐에 따라 visualization이 매우 달라질 수 있다.


어떻게 우리는 Differential expression의 정도를 계산할까?

1) Fold change (Avg(X) / Avg(Y))를 사용하는 것 (Naive method)

  • MAS4, MAS5, dChip
    • Natural scale을 사용하므로 바로 fold change 계산
  • RMA를 사용하는 방법 (microarray 포스팅 참고)
    • RMA는 log scale을 사용하기 때문에 샘플 X와 sample Y의 평균 expression level을 빼면 log(Avg(X)) - log(Avg(Y)) = log(Avg(X)/Avg(Y))이다. 따라서 fold change (Avg(X) / Avg(Y))를 계산하려면 두 로그값의 차이에 exponential을 취해주어야 한다. 그렇지 않으면 geometric mean을 게산한 것이 된다.
  • 예시 : 다음과 같이 Gene 1, 2와 Gene 3에 대한 3개의 Treatment sample (T1, T2, T3), 3개의 Control sample (C1, C2, C3)와 Fold change 값 (FC)가 있다고 하자.

  • FC = 36.67은 Treatment group에서 크게 overexpressed된 것을 알 수 있고, FC = 1.875은 Treatment group에서 약간 overexpressed된 것을 알 수 있다.
  • 다른 예시를 보자.

  • Gene 4를 보면 Control보다 Treatment에서 더 높은 값을 가짐을 알 수 있다. 반면 Gene 5에서는 Control과 Treatment에 따른 차이가 크지 않다. 하지만 FC값은 2.213으로 동일하다. 여기서 Fold change사용의 문제점이 드러난다. 따라서, differential expression level의 confidence를 줄 수 있는 다른 통계량이 필요하다.

2) T-test (데이터가 정규분포를 따르는 경우)

  • T-test는 데이터가 Normal을 따른다는 가정이 필요하다.
  • 우선, 데이터가 Normality assumption을 만족하는지 알아보기 위해 QQ Plot을 그린다.


3) Wilcoxon Rank Sum Test (데이터가 정규분포를 따르지 않는 경우)

  • 행에 있는 모든 데이터에 순위를 매긴후, Treatment와 Control그룹의 랭크의 합을 각각 라 하자.
  • 예) 10개의 normal sample (control) 과 10개의 cancer sample (treatment)이 있다고 하면, min(T) = 55 ( = 1 + 2 + … + 10)이고 max(T) = 155 ( = 11 + 12 + … + 20)이다.
  • Significance rule은 permutation에 의해 결정되는데, 예를 들어 위의 예시의 경우, 랜덤으로 많은 수의 조합 (permutation)을 simulation해서 분포를 그려보면 다음과 같다.

  • 이 경우, T = 150 이상일 경우에 Significant하다고 할 수 있다. 여기서 150이라는 숫자는 U table (transformation of T)에서 도출할 수 있다.
  • 하지만 이 방법은 nonparametric한 방법이므로, 샘플의 수가 적을 땨에는 power이 작다는 단점이 있다.

Linear Model for Differential Expression

  • Linear model : 각 gene j마다의 seperate한 linear model로써,
    • : 특정 sample
    • : RMA analysis를 통한 expression index
    • : baseline gene expression level, gene j의 전체 experiment (RMA expression index)에 대한 평균 expression level
    • : differential expression from i-th condition, i-th condition의 overall mean ()으로부터의 편차(deviation)
  • 이 모델에서, 3개의 treatment (mutant)와 3개의 control (wildtype)에 대해,
  • 귀무가설 : - 에대해 검정한다 (treatment와 control group사이에 차이가 있는가?)

1) Ordinary t-tests

  • 일반적인 t-test는 다음과 같다.
  • where
  • 여기서 c는 test statistic 의 인자로서, sample size에 영향을 받는다. 이는 당연한 것인데, confidence는 sample size에 영향을 받기 때문이다.
  • 그렇다면 표준 편차인 는 어떻게 계산할까?: 다음의 수식으로 계산할 수 있다. (여기서 는 pooled sd)

2) Welch-t test

  • condition 별로 variance가 다른경우에 사용한다.

문제점

  • 1)과 2)의 parametric한 방법은 sample size가 10은 넘어야 한다. 하지만, 위의 예시에서 3개의 treatment와 3개의 control replicate가 있는 경우, sample size가 너무 작다.
  • 또한, replicate의 경우 서로간의 유사성이 높아 가 매우 작을 가능성이 있다. 그러면 의 값이 너무 커지므로 문제가 발생한다.

Variance Stabilization

  • Statistical Analysis of Microarrays (SAM)
    • Modified t*를 사용함
    • 가 너무 작거나 0이 되는 것을 방지하기 위해, 를 다른 array로부터의 gene의 를 사용해 증가시킴. (예: lowest 5 percentile of 값으로 대체하기)
  • LIMMA algorithm, Smyth 2004 (SKIP, 다음에 다시 하기)
    • Empirical Bayes 방법을 사용함. 모든 gene으로부터 information을 borrow하는 것.


Multiple Hypothesis Testing

기존의 Differential expression analysis는 fold change가 2이상이거나 1.5이상이면 두 control과 treatment그룹의 gene expression level이 유의하게 차이가 난다고 하는 등 대략적인 기준을 많이 사용해왔다. 하지만, 다음과 같은 상황을 가정해보자.

  • : trt와 ctr간 expression에 차이가 없음, : trt와 ctr간 expression에 차이가 있음
  • 의 기각 : 차이가 있다고 생각되어지는 gene이 call됨
  • 모든 gene에 대해 differential expression을 test한다. 이때 p-value < 0.01이면 control과 treatment그룹간의 차이가 유의하다고 하자.
  • 그러면, 한 어레이에 20K (2만 개)의 gene이 있다고 할때, 0.01*20K = 200 개의 gene이 잠정적으로 잘못 call되게 된다. 왜냐면 20K의 gene은 워낙 개수가 많기 떄문에 우연히라도 p-value가 0.01보다 작을 확률이 있기 떄문이다.
  • 따라서, 이러한 문제를 해결하기 위해 더 작은 p-value를 사용하여 FWER (Family-Wise Error Rate)FDR (False Discovery Rate)를 조절해야 한다.

1) FWER (Family-Wise Error Rate), Bonferroni correction

  • 잘못된 test: P(적어도 하나의 hypothesis에서 false rejection) <
  • P(no false rejection) >
  • Bonferroni correction : FWER을 control하기 위해 m개의 hypothesis를 유의수준에서 test하는 경우에 각 test의 false rejection rate를 으로 사용하는 것.
  • 예시: 만약 이고, gene의 수 (hypothesis의 수)가 20K라면, Bonferroni correction을 이용한 새로운 p-value cutoff는 0.05/20K = 2.5E-6이다.
  • 하지만, FWER는 Differential Expression Analysis에서 너무 보수적(conservative)인 경향이 있다. (아무것도 call되지 않는 상황)

2) False Discovery Rate (FDR = Adjusted p-value = Qvalue)

  • V : type 1 에러 (False Positive)
  • T : Type 2 에러 (False Negative)
  • R : Call된 gene의 수
  • FDR = V / R (FP / All called)
  • FDR를 control한 다는 것은, 전체 call 된 gene중에 몇 %의 gene만이 잘못 call되었는지를 따져서, 그 비율을 조절한다.
  • FDR은 FWER보다 덜 conservative하다.

참고) Benjamini and Hochberg, 1995

  • FDR을 control하기 위한 방법을 제시한다., e.g.
  • 각 test에 대한 p-value가 서로 독립이라고 가정하자.
  • 모든 m개의 gene (x)에 대해, p-value를 rank한다 (y)
  • 인 line을 그린다.
  • line보다 아래에 있는 gene만을 call한다.
  • 1 gene인 경우 FDR = p-val이다.

  • 위의 그림에서 x축은 gene을 p-value에 따라 rank한 뒤 순서대로 order시킨 것이다. (m으로 나누어 지면서 0 ~ 1사이의 값으로 변경됨)
  • 파란색 선은 FDR로 기울기가 커질수록 더 많은 gene이 call되게 된다. (파란선 아래의 gene을 call)
  • FDR (파란색 선)은 test하는 gene이 많아질 수록 (x축이 오른쪽으로 갈 수록) 증가하는 것을 알 수 있다.

Q-value) by Storey & Tibshirani, PNAS, 2003

  • 만약 differential expression analysis를 하는데, treatment와 control group간에 차이가 없으면 p-value의 distribution은 어떻게 생겼을까? -> 이런 경우 p-value는 uniform한 distribution을 가지게 된다.
  • 반면 두 그룹간 유의한 차이가 있을 경우에 p-value의 분포는 다음 그림과 같다. 아래 그림은 3,170개의 p-value를 히스토그램으로 나타낸 것이다.
  • 맨 위의 점선은 treatment와 control간에 gene expression의 차이가 없을 때를 나타낸다.
  • (A 지역) 두 번째 점선은 FDR에 해당하는 선인데, 그림 설명을 보면 “The height of our estimate of the proportion of null p values”라고 되어있다. 즉 우연으로 발생한 값이라고 생각할 수 있다. 따라서, 두번째 점선 위의 값들이 (B 지역) 진짜로 유효한 p-value를 나타낸다고 볼 수 있다.

  • 따라서, 분석을 시행할 때 FDR을 기준으로 하는 것이 좋다. (예: at FDR level 0.05) 그러면 p-value는 0.05보다 훨씬 더 작은 값을 가지게 된다.
  • P-value와 FDR은 monotonic하다 : 모든 p-values는 그에 해당하는 FDR을 가진다. (FDR은 주로 p-value보다 큼 값을 가짐)
  • 실제 주로 사용하는 FDR level: 1%, 5%, 10%를 사용함. (fold change로 filter한 값을 사용하기도 함.)
  • FDR은 대략적인 signal / noise의 비를 줌으로써 실험의 quality를 추측할 수 있게 해준다.
  • 보통 Differential expression analysis를 하면 500 ~ 2000개의 significant한 gene이 있게 된다.