Probabilidad de encontrar una secuencia particular de pares de bases


10

Pensar en la probabilidad siempre me hace darme cuenta de lo malo que soy contando ...

Considere una secuencia de letras base , cada uno con la misma probabilidad de aparecer. ¿Cuál es la probabilidad de que esta secuencia contenga una secuencia particular de pares de bases de interés de longitud ?A ,nr nA,T,C, and Grn

Hay secuencias diferentes (igualmente probables) posibles. Comience con la secuencia de interés al comienzo de la secuencia completa; secuencias como esta son posibles. Podemos comenzar nuestra secuencia de interés en diferentes ubicaciones. Por lo tanto, mi respuesta es .4 n - r n + 1 - r ( n + 1 - r ) / 4 r4n4nrn+1r(n+1r)/4r

Esta probabilidad aumenta en , lo que tiene sentido para mí. Pero esta probabilidad excede 1 cuando . Pero eso no puede ser. La probabilidad debería acercarse a 1 en el límite (me parece), pero no excederlo.n > 4 r + r - 1nn>4r+r1

Supongo que estoy contando dos veces algo. ¿Qué me estoy perdiendo? Gracias.

(Para su información, no tarea, solo un ejemplo de juguete en preparación para los exámenes. Una pregunta planteada por mi amigo biólogo molecular).


Eso es correcto, no debería exceder uno, ya que eso violaría los axiomas de probabilidad: books.google.com/…
Chris Simokat

Respuestas:


5

Consideremos una versión pequeña de este problema con . ¿Cuál es la posibilidad de que una secuencia de cinco letras contenga el objetivo ? Esto es fácil: de todas las secuencias comienzan con esta cadena, otros terminan con ella, y ninguna secuencia comienza y termina con esta cadena. Por lo tanto, la probabilidad es .... A C G T ... 4 - 4 4 - 4 2 × 4 - 4n=5ACGT44442×44

Por otro lado, ¿cuál es la posibilidad de ? Una vez más, de las secuencias comienzan con esta cadena, la misma proporción termina con esta cadena y de todas las secuencias hacen ambas . Por lo tanto, según el Principio de Inclusión-Exclusión, la respuesta es .4 - 4 4 - 5 2 × 4 - 4 - 4 - 5AAAA44452×4445

En general, la respuesta depende de la estructura de la subcadena. Para ser más específicos, cuando escanea una cadena (de izquierda a derecha, por ejemplo) para , ignora todos los caracteres hasta que ve esa inicial . Después de eso, hay tres posibilidades: el siguiente personaje es una coincidencia para , el siguiente es una no coincidencia para pero no es una (por lo que está de vuelta en el estado de espera para ), o el siguiente no coincide, pero es una , lo que lo coloca en el estado de simplemente vio . Por el contrario, considere una búsqueda de . Supongamos que has visto el prefijoA C C A A A A A C T A C G A C T A CACGTACCAAAAACTACGACTAC. El siguiente carácter coincidirá si es . Cuando no es una coincidencia, (i) una coloca en el estado inicial de esperar por una , (ii) una tiene pendiente de una , y (iii) una significa que ya ha visto y ya estás a medio camino de un partido (y estás buscando la segunda ). La "estructura" relevante consiste evidentemente en patrones de subcadenas en el objetivo que coinciden con el prefijo del objetivo. Es por eso que las posibilidades dependen de la cadena objetivo.C A A C T A C T AGCAACTACTA

Los diagramas de la FSA que defiendo en una respuesta en Time tomado para golpear un patrón de cara y cruz en una serie de lanzamientos de monedas pueden ayudar a comprender este fenómeno.


3

Una aproximación cruda sería . Usted toma la probabilidad de que su secuencia no ocurra en una ubicación particular, póngala a la potencia del número de ubicaciones (suponiendo falsamente la independencia), que es no , y esto es una aproximación de que no ocurre entonces debes restar esto de . n - r + 1 n - r 11(11/4r)nr+1nr+1nr1

Un cálculo preciso dependerá del patrón preciso que esté buscando. es más probable que no ocurra que .A T C G TAAAAAATCGT


Tal vez soy solo yo, pero parece un poco más claro en términos de comprender cómo se construyó la ecuación. 1(1(1/4)r)n(r1)

@JoeRocc: sospecho que esto es personal. Si leyó desde la página hasta la página de un libro, ¿ha leído páginas o páginas? 400 400 - 300 + 1 = 101 400 - ( 300 - 1 ) = 101300400400300+1=101400(3001)=101
Henry

No se preocupe, solo estaba siguiendo mi intuición del problema. Si intuitivamente derivamos una ecuación para ser , entonces cuando trato de explicárselo a alguien, creo que es mejor dejarlo así en lugar de simplificarlo a (aunque esto puede resultar más intuitivo si se considera). Su intuición puede haber sido diferente en cualquier caso :)a - b + c - 1 + d(a(b(c1+d)))ab+c1+d

2

Está contando dos veces las secuencias que incluyen varias veces su subsecuencia objetivo, por ejemplo, tanto en la posición A como en la posición B! = A. Es por eso que su probabilidad errónea puede exceder 1


Muy bien hecho ! +1
Michael R. Chernick

1

Es posible obtener la probabilidad exacta de una subsecuencia particular usando una representación en cadena del problema de Markov. Los detalles de cómo construir la cadena dependen de la subsecuencia particular de interés, pero daré un par de ejemplos de cómo hacerlo.


Probabilidad exacta a través de la cadena de Markov: considere una secuencia discreta de resultados de donde los resultados en la secuencia son intercambiables, y suponga que estamos interesados ​​en alguna subcadena de longitud . Para cualquier valor dado de , vamos a es el suceso que se produce la subcadena de interés, y dejar que ser el caso de que los últimos resultados son los primeros en caracteres de la subcadena de interés (pero no más que esto). Utilizamos estos eventos para dar la siguiente partición de posibles estados de interés:A,T,C,GknWHaaa<kk+1

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

Dado que se supone que la secuencia de resultados es intercambiable, tenemos resultados independientes condicionales a sus respectivas probabilidades . Su proceso de interés puede representarse como cadenas de Markov de tiempo discreto que comienzan en en y transiciones de acuerdo con una matriz de probabilidad que depende de la subcadena particular de interés. La matriz de transición siempre será aθA+θT+θC+θG=1State 0n=0(k+1)×(k+1)matriz que representa las probabilidades de transición utilizando los estados anteriores. Si no se ha alcanzado la subcadena de interés, entonces cada transición puede acercarlo un paso más a la subcadena o puede regresarlo a un estado anterior que depende de la subcadena en particular. Una vez que se alcanza la subcadena, este es un estado absorbente de la cadena, que representa el hecho de que se ha producido el evento de interés.

Por ejemplo, si la subcadena de interés es , la matriz de transición es:AAAAAA

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

Por el contrario, si la subcadena de interés es , la matriz de transición es: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.]

Como se puede ver arriba, la construcción de la matriz de transición requiere atención a la subcadena particular. Un resultado incorrecto lo regresa a un estado anterior en la cadena que depende de la subcadena particular de interés. Una vez que se construye la matriz de transición, para un valor dado de la probabilidad de tener la subcadena en la cadena es . (Esta probabilidad es cero para todos .)nP(W|n)={Pn}0,kn<k


Programación de esto en R: puede programar esto como una función Rcreando una función que genere la matriz de transición para la cadena de Markov y una matriz de sus potencias hasta el número deseado de pruebas. Luego puede leer la probabilidad de transición apropiada para el valor de que sea de interés. Aquí hay un ejemplo de algún código para hacer esto:n

#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

Como puede ver en este cálculo, la probabilidad de obtener la subcadena en lanzamientos con resultados equiprobables es . Este es solo un ejemplo que usa una subcadena particular y un número dado de ensayos, pero se puede variar para obtener probabilidades con respecto a otras subcadenas de interés.AAAAAAn=1000.01732435

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.