Lesson 18 of 20
차등발현 — 반복수가 p값보다 중요하다
왜 음이항이고, 왜 p값을 그대로 쓰면 안 되나
이제 「대조군과 처리군에서 다르게 발현된 유전자」를 찾습니다. 유전자마다 t검정을 하면 될 것 같지만, 두 가지가 막습니다.
① 반복이 너무 적다
시료가 3개씩
분산을 3개로 추정할 수 없다
t검정이 무의미해진다
분산을 3개로 추정할 수 없다
t검정이 무의미해진다
② 검정을 2만 번 한다
p < 0.05 를 2만 번 하면
차이가 전혀 없어도
1,000개가 유의하게 나온다
차이가 전혀 없어도
1,000개가 유의하게 나온다
이 셀 하나가 padj 를 써야 하는 이유의 전부입니다.
Python
Runs in your browser
흩어짐 하나가 들어가면 값이 이만큼 흔들립니다.
Python
Runs in your browser
반복수 — 여기가 진짜 문제다
| 반복수 | 잡을 수 있는 것 | 쓸 만한가 |
|---|---|---|
| 2 | 분산을 추정할 수 없다 | ❌ 하지 말 것 |
| 3 | 4배 이상 차이 나는 유전자 | 최소한 |
| 5~6 | 2배 차이 | ✅ 권장 |
| 10 이상 | 1.5배 차이 | ✅ 미묘한 효과를 볼 때 |
깊이를 두 배로 늘리는 것보다 시료를 하나 더 넣는 것 이 낫다
이것이 이 강의 전체의 결론 중 하나입니다. 2강에서 「깊이를 어디에 쓸 것인가」를 물었는데, 답이 여기 있어요.
예산을 어디에 쓸지 정하는 셈.
Python
Runs in your browser
결과 표에서 보는 것
| 열 | 무엇 | 보는 법 |
|---|---|---|
baseMean | 모든 시료의 평균 카운트 | 10 아래면 믿지 않는다 |
log2FoldChange | 2를 밑으로 한 배수 | 1 이면 두 배 |
lfcSE | 그 배수의 오차 | 크면 반복이 모자란다 |
pvalue | 보정 전 | 쓰지 않는다 |
padj | BH 보정 뒤 (FDR) | 이것으로 자른다 — 보통 0.05 |
자르는 관습은 padj < 0.05 그리고 |log2FC| > 1 입니다. 둘 다 걸어야 해요 — 통계적으로 유의해도 1.05배 차이는 뜻이 없습니다.
🤔 Check yourself
유전자 2만 개를 p < 0.05 로 검정하면, 차이가 전혀 없어도 몇 개가 유의하게 나오나?
Answer 20,000 × 0.05 = 1,000개. 그래서 BH 보정을 거친
padj 로 자릅니다.🤔 Check yourself
예산이 조금 더 생겼다. 무엇에 쓰는 것이 나은가?
Answer 생물학적 개체차는 깊이로 줄일 수 없습니다.
반복을 늘리는 것만이 그 분산을 다룹니다.