11강 / 20강

1만 7천 번 물으면 855번은 그냥 걸린다

Benjamini Y, Hochberg Y. J R Stat Soc B 57:289-300 (1995)

1만 7천 번 물으면 855번은 그냥 걸린다
동전을 한 번 던져 앞면이 열 번 연속 나오면 놀랍습니다. 천 명이 던지면 누군가는 반드시 그렇게 됩니다.

p < 0.05 는 '차이가 없는데도 이만큼 갈릴 확률이 5% 미만' 이라는 뜻입니다. 바꿔 말하면, 차이가 없는 유전자 100개를 검사하면 그중 5개는 그냥 걸립니다.

우리는 17,097개를 검사했습니다.

17,097 × 0.05 ≈ 855개

차이가 하나도 없더라도 855개쯤은 p < 0.05 로 나옵니다. 그냥 나옵니다.

차이를 0 으로 놓고 만든 자료인데도 800개 넘게 걸립니다. 전부 가짜입니다.
Python 브라우저에서 실행

거짓발견율 — 다르게 묻기

옛 방법(본페로니)은 기준을 통째로 조입니다 — 0.05 대신 0.05/17097 을 쓰는 식으로요. 확실하지만 너무 가혹해서 진짜도 다 놓칩니다.

벤저미니-호크버그(BH) 는 물음을 바꿉니다.

본페로니가 묻는 것
"가짜가 하나라도 섞일 확률을 5% 아래로"
→ 너무 엄격합니다
BH 가 묻는 것
"내가 고른 것들 가운데 가짜 비율을 10% 아래로"
→ 쓸 만합니다

이 비율을 거짓발견율(FDR, false discovery rate) 이라 하고, 유전자마다 계산한 값을 q 값이라고 부릅니다.

세 번째 줄을 보세요. 보정값은 0.091 인데 q 는 0.0588 입니다 — 뒤쪽(5번째)의 보정값이 더 작아서 끌어내린 것입니다.
Python 브라우저에서 실행
2,649개가 579개로 줄어듭니다. WRN 은 q = 1.03e-03 으로 넉넉히 살아남습니다.
Python 브라우저에서 실행
FDR 문턱을 옮겨 보세요. 몇 개가 남고 그중 몇 개가 가짜일 것으로 예상되는지 함께 보입니다.
불러오는 중…
🤔 확인 문제
유전자 17,097개를 p < 0.05 로 검사할 때, 진짜 차이가 하나도 없어도 몇 개쯤 걸립니까?
🤔 확인 문제
q 값(FDR)이 본페로니 보정보다 실제 연구에서 널리 쓰이는 이유는?