RNA seq와 ChIP-chip 데이터 세트 사이의 유전자 목록 중복 가능성 계산


13

이 포럼의 누군가가 유전자 발현 연구에서이 기본적인 문제를 해결해 줄 수 있기를 바랍니다.

나는 실험 조직과 대조 조직의 깊은 시퀀싱을했다. 그런 다음 대조군보다 실험 샘플에서 유전자의 배수 농축 값을 얻었습니다. 기준 게놈에는 ~ 15,000 개의 유전자가 있습니다. 15,000 개 유전자 중 3,000 개가 대조군과 비교하여 관심있는 샘플에서 특정 컷오프 이상으로 농축되었습니다.

따라서 : A = 총 유전자 집단 = 15,000 B = RNA-Seq 농축 하위 집단 = 3,000.

이전의 칩 칩 실험에서, 칩 칩이 풍부한 400 개의 유전자를 발견했습니다. 400 개의 칩 칩 유전자 중 100 개의 유전자가 3,000 개의 농축 된 RNA-Seq 전 사체 그룹에 있습니다.

따라서 : C = 총 칩 칩 풍부 유전자 수 = 400.

100 개의 칩 칩 유전자가 우연히 RNA-Seq에 의해 풍부해질 확률은 얼마입니까? 다시 말해, B와 C (100 개의 유전자) 사이에 관찰 된 중첩이 우연히 얻은 것보다 더 나은지 계산하는 가장 신중한 방법은 무엇입니까? 지금까지 읽은 내용에서 이것을 테스트하는 가장 좋은 방법은 초기 하 분포를 사용하는 것입니다.

온라인 계산기 (stattrek.com)를 사용하여 다음과 같은 매개 변수로 초 지오 분포 분포 테스트를 설정했습니다. Hypergeometric Probability P (x = 100) = 0.00224050636447747에 대해 다음을 얻습니다.

B와 C 사이에 겹치는 실제 유전자 수 = 100. 이것은 우연히하는 것보다 낫습니까? 하나의 유전자가 풍부해질 확률이 1 : 5 (15,000 중 3,000) 인 것처럼 보이지 않습니다. 그래서 위에서 계산 한 P (x = 100)이 0.0022가되는 방법을 이해하지 못하는 이유가 있습니다. 우연히 중복이 발생할 확률은 0.2 %입니다. 이보다 더 높아서는 안됩니까?

400 개의 무작위 유전자를 샘플링하여 15,000 개의 큰 목록을 만들면이 유전자 중 80 개가 우연히 풍부해질 것으로 예상됩니다 (1 : 5). 실제로 겹치는 유전자의 수는 100 개이므로 우연보다 약간 더 좋습니다.

또한 R의 Dhyper 또는 Phyper 기능을 사용하여 솔루션을 생각해 보았습니다 (다른 게시물에서 본 것을 사용하여). -칩 농축 유전자 (400) 다음은 R 입력 / 출력입니다 (이전 스택 교환 포스트에서 수정).

> totalpop <- 15000    
> sample1 <- 3000    
> sample2 <- 400    
> dhyper(0:2, sample1, totalpop-sample1, sample2)    
[1] 4.431784e-40 4.584209e-38 2.364018e-36    
> phyper(-1:2, sample1, totalpop-sample1, sample2)    
[1] 0.000000e+00 4.431784e-40 4.628526e-38 2.410304e-36    

이 숫자를 해석하는 방법을 잘 모르겠습니다. 2.36e-36은 우연히 B와 C가 완전히 겹칠 가능성이 있다고 생각합니까? 그러나이 확률은 1 : 5에 훨씬 가깝기 때문에 의미가 없습니다. 15,000 개의 유전자로 시작하면 3,000 개가 풍부 해집니다. 마찬가지로, 400 개의 칩 칩 유전자로 시작한다면, 그 데이터 세트에서 1 : 5의 농축 가능성으로 인해 80 개가 RNA-Seq만으로 강화되어야합니다.

B와 C의 겹침에 대해 초기 하 분포에 따라 p- 값을 계산하는 올바른 방법은 무엇입니까?

답변:


15

당신의 사용과 함께, 가까이 dhyper하고 phyper,하지만 난 어디 이해하지 못한다 0:2-1:2에서오고있다.

원하는 p- 값은 3000 개의 흰색 공과 12000 개의 검은 공을 가진 항아리에서 400 크기의 샘플에서 100 개 이상의 흰 공 을 얻을 확률입니다 . 이를 계산하는 네 가지 방법이 있습니다.

sum(dhyper(100:400, 3000, 12000, 400))
1 - sum(dhyper(0:99, 3000, 12000, 400))
phyper(99, 3000, 12000, 400, lower.tail=FALSE)
1-phyper(99, 3000, 12000, 400)

이것들은 0.0078을 제공합니다.

dhyper(x, m, n, k)정확하게 그릴 확률을 제공합니다 x. 첫 번째 줄에서는 확률을 100 – 400으로 요약합니다. 두 번째 줄에서는 1에서 확률의 합을 0 – 99로 뺀 값을 취합니다.

phyper(x, m, n, k)x또는 이하 의 확률을 제공 하므로 phyper(x, m, n, k)와 동일합니다 sum(dhyper(0:x, m, n, k)).

lower.tail=FALSE약간 혼란이다. phyper(x, m, n, k, lower.tail=FALSE)동일하다 1-phyper(x, m, n, k), 등의 확률 x+1이상이다. [나는 이것을 기억하지 않으므로 항상 다시 확인해야합니다.]

max(dhyper(0:400, 3000, 12000, 400))

이 경우의 초기 하 분포의 그림이 있습니다. 중앙에 80 (400의 20 %)이 있고 오른쪽 끝에 100이있는 것을 볼 수 있습니다. 여기에 이미지 설명을 입력하십시오


도와 주셔서 감사합니다. 나는 당신의 대답 뒤에 논리를 이해합니다. 그러나 이것이 한 번의 가능성으로 인해 겹치는 것보다 크다고 여러 생물 학자들에게 어떻게 설명 할 수 있습니까? 그들은 내가 1 : 5의 확률로 겹칠 것이라고 말할 것이다. 400 개의 볼 (15,000 개의 볼 중)의 표본 크기에서 흰색 볼을 얻을 가능성이 더 적은 모집단 (전체 15,000이 아닌)을 샘플링하기 때문에 실제로 1 : 5보다 낮기 때문에 중첩이 중요합니까? 400 <15,000이지만 화이트 : 블랙의 비율은 여전히 ​​1 : 5이기 때문에 이치에 맞지 않습니다. 이게 말이 되요?
stlandroidfan

@stlandroidfan-나는 당신이 혼란스럽게하는 것을 이해하지 못합니다. 그림을 추가했습니다. 도움이 되나요?
Karl

0

이 방법으로보십시오. 이항으로 가정하면 정확하지 않을 수 있지만 상당히 근사해야합니다. sigma ^ 2는 .8 * .2 * 400 = 64, sigma = 8입니다. 80에서 100까지 2.5 표준 편차를갔습니다. 이것은 상당히 중요합니다. p- 값이 작아야합니다.


답변 주셔서 감사합니다. 초 지오메트리 분포는 문헌에서 본 것과 중복되는 유전자 목록에 더 자주 사용되는 경향이 있습니다. 문제는 3000 개의 흰색 공과 12000 개의 검은 공이있는 항아리에서 크기가 400 인 샘플에서 100 개 이상의 흰 공을 얻을 확률은 무엇입니까? 나는 아직도 많은 생물 학자들에게 이것을 설명하는 방법에 당황하고 있다고 생각합니까? 그들이 3000 : 12000이라고 보는 방식은 1 : 5의 흰색 : 검정입니다. 따라서 400의 샘플링에서 80은 흰색이어야합니다. 그렇다면 어떻게 100 이상을 얻을 확률이 20 % (1/5)보다 훨씬 낮습니까?
stlandroidfan
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.