염기 서열의 특정 서열을 찾을 가능성


10

확률에 대해 생각하면 항상 계산하는 것이 얼마나 나쁜지 알 수 있습니다.

일련의 고려 기본 문자 ,n 각각 똑같이 가능성이 나타날 수 있습니다. 이 시퀀스에 길이 r n 의 특정 관심베이스 쌍 시퀀스가 ​​포함될 확률은얼마입니까?A,T,C, and Grn

거기에 다른이 (동등 것) 가능한 시퀀스. 전체 시퀀스의 시작 부분에서 관심 시퀀스로 시작하십시오. 이와 같은 4 n - r 시퀀스가 가능하다. n + 1 - r 다른 위치 에서 관심 시퀀스를 시작할 수 있습니다. 따라서 제 대답은 ( n + 1 r ) / 4 r 입니다.4n4nrn+1r(n+1r)/4r

이 확률은 증가하고 있습니다. 그러나이 확률은 n > 4 r + r - 1 일 때 1을 초과 합니다. 그러나 그것은 할 수 없습니다. 확률은 한계에서 1에 가까워 야하지만 (나에게 보임) 초과하지 않아야합니다.nn>4r+r1

나는 무언가를 두 번 세고 있다고 가정합니다. 내가 무엇을 놓치고 있습니까? 감사.

(물론 숙제가 아니라 시험 준비를위한 장난감의 예입니다. 분자 생물 학자 친구가 제기 한 질문입니다.)


그것은 그 이후 한 확률의 공리를 위반 초과하지 않아야 대해 맞습니다 : books.google.com/...
크리스 Simokat

답변:


5

이 문제의 작은 버전을 생각해 봅시다 . 5 개의 문자 시퀀스가 ​​목표를 포함 할 가능성은 무엇입니까 A C G T ? : 이것은 쉽게 4 - 4 , 모든 시퀀스는이 문자열로 시작하는 또 다른 4 - 4 그것으로 끝, 어떤 순서는이 문자열로 시작하지 않고 양쪽 끝. 따라서 확률은 2 × 4 4 입니다.n=5ACGT44442×44

반면에, 기회 것입니다 ? 다시 한번, 4 - 4 시퀀스의이 문자열이 문자열과 동일한 비율의 끝과 시작 4 - (5) 모든 시퀀스의이 두 가지를 모두 수행 . 따라서, 개재물 배제의 원리에 의해, 대답은 2 × 4 - 4 - 4 - (5) .AAAA44452×4445

일반적으로 답은 부분 문자열의 구조에 따라 다릅니다. 더 구체적으로 말하면 대해 문자열을 왼쪽에서 오른쪽으로 스캔 할 때 초기 A가 나타날 때까지 모든 문자를 무시합니다 . 그 후, 세 가지 가능성이있다 : 다음 문자의 일치 C , 다음 하나에 대한 비 일치 C는 하지만, 아니다 (다시 대기를 위해 AN-에 그래서 상태) 또는 다음은 일치하지 않지만 A 이므로 A를 나타 냅니다. 대조적으로, A C T A C G에 대한 검색을 고려하십시오ACGTACCAAAAACTACG. 접두사 보았다고 가정하십시오 . 다음 문자는 G 인 경우 일치합니다 . 일치하지 않는 경우 (i) C는 사용자를 초기 대기 A 상태로 전환하고 (ii) AC 를 감시 하고 (iii) T 는 이미 본 것을 의미합니다 ... A C T 당신은 이미 경기 중간에 있습니다 (두 번째 A를 찾으십시오 ). 관련 "구조"는 대상의 접두사와 일치하는 대상의 하위 문자열 패턴으로 구성되어 있습니다. 이것이 기회가 목표 문자열에 의존하는 이유입니다.ACTACGCAACTACTA

일련의 동전 모양으로 머리와 꼬리의 패턴을 맞추기 위해 찍은 시간에 답장에서 옹호하는 FSA 다이어그램 은이 현상을 이해하는 데 도움이 될 수 있습니다.


3

원유는 근사 될 . 시퀀스가 특정 위치에서 발생하지 않을 확률을 취하여 위치 수만큼 거듭 제곱합니다 (독립이라고 가정 함) .n - r + 1이 아닌 n - r 이며 이는 근사치입니다. 발생하지 않으므로 1 에서 이것을 빼야합니다 . 1(11/4r)nr+1nr+1nr1

정확한 계산은 찾고자하는 정확한 패턴에 따라 다릅니다. A T C G T 보다 발생하지 않을 가능성이 높습니다 .AAAAAATCGT


어쩌면 그것은 나뿐이지만 은 방정식이 어떻게 구성되었는지 이해하는 측면에서 조금 더 분명해 보입니다. 1(1(1/4)r)n(r1)

@JoeRocc-나는 이것이 개인적이라고 생각합니다. 이 페이지에서 읽을 경우 페이지를 통해 400 책, 읽고있는 400 - 300 + 1 = 101 페이지 또는 400 - ( 300 - 1 ) = 101 페이지를? 300400400300+1=101400(3001)=101
Henry

걱정하지 마라, 나는 단지 문제의 직관에 의해서만 가고 있었다. 우리가 직관적으로 방정식을 유도하는 경우로 다른 사람에게 설명하려고 다음 때, 나는 그로 떠나보다는 그것을 단순화하는 것이 최선이라고 생각 - B를 + c 1 + d (이것은 확실히 고려할 때 더 직관적 일 수 있음). 당신의 직감은 어쨌든 다를 수 있습니다 :)(a(b(c1+d)))ab+c1+d

2

예를 들어 위치 A와 위치 B! = A와 같이 대상 하위 시퀀스의 여러 배를 포함하는 시퀀스를 두 번 계산합니다. 그래서 잘못된 확률이 1을 초과 할 수 있습니다


잘 했어요! +1
Michael R. Chernick 2016 년

1

문제의 Markov chain 표현을 사용하여 특정 하위 시퀀스의 정확한 확률을 얻을 수 있습니다. 체인을 구성하는 방법에 대한 세부 사항은 관심있는 특정 하위 시퀀스에 따라 다르지만이 작업을 수행하는 방법에 대한 몇 가지 예를 제공합니다.


A,T,C,GknWHaaa<kk+1 가능한 관심 국가 :

State 0W¯H0,   State 1W¯H1,   State 2W¯H2,   State 3W¯H3,   State k1W¯Hk1,State kW.  

θA+θT+θC+θG=1State 0n=0(k+1)×(k+1)위의 상태를 사용한 전이 확률을 나타내는 행렬. 관심있는 하위 문자열에 도달하지 않은 경우 각 전환으로 인해 한 단계 씩 하위 문자열에 더 가까이 가거나 특정 하위 문자열에 의존하는 이전 상태로 다시 설정할 수 있습니다. 부분 문자열에 도달하면 이는 체인의 흡수 상태이며, 관심있는 이벤트가 발생했음을 나타냅니다.

AAAAAA

P=[1θAθA000001θA0θA00001θA00θA0001θA000θA001θA0000θA01θA00000θA0000001.]

ACTAGC

P=[1θAθA00001θAθCθAθC00001θAθTθA0θT0001θA000θA001θAθCθGθAθC00θG01θAθCθA0000θC0000001.]

nP(W|n)={Pn}0,kn<k


Rn

#Create function to give n-step transition matrix for n = 1...N
#We will use the example of the substring of interest "AAAAAA"

#a is the probability of A
#t is the probability of T
#c is the probability of C
#g is the probability of G
#N is the last value of n
PROB <- function(N,a,t,c,g) { TOT <- a+t+c+g;
                              a <- a/TOT; 
                              t <- t/TOT; 
                              c <- c/TOT; 
                              g <- g/TOT; 

                              P <- matrix(c(1-a, a, 0, 0, 0, 0, 0,
                                            1-a, 0, a, 0, 0, 0, 0,
                                            1-a, 0, 0, a, 0, 0, 0,
                                            1-a, 0, 0, 0, a, 0, 0,
                                            1-a, 0, 0, 0, 0, a, 0,
                                            1-a, 0, 0, 0, 0, 0, a,
                                              0, 0, 0, 0, 0, 0, 1),
                                          nrow = 7, ncol = 7, 
                                          byrow = TRUE);
                              PPP <- array(0, dim = c(7,7,N));
                              PPP[,,1] <- P;
                              for (n in 2:N) { PPP[,,n] <- PPP[,,n-1] %*% P; } 
                              PPP }

#Calculate probability for N = 100 for equiprobable outcomes
N <- 100;
a <- 1/4;
t <- 1/4;
c <- 1/4;
g <- 1/4;
PROB(N,a,t,c,g)[1,7,N];

[1] 0.01732435

AAAAAAn=1000.01732435

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.