Probabilità di trovare una particolare sequenza di coppie di basi


10

Pensare alla probabilità mi fa sempre capire quanto sono cattivo nel contare ...

Considera una sequenza di lettere base , entrambi ugualmente probabili apparire. Qual è la probabilità che questa sequenza contenga una particolare sequenza di coppie base di interesse di lunghezza ?A ,nr nA,T,C, and Grn

Sono possibili sequenze diverse (ugualmente probabili). Inizia con la sequenza di interesse all'inizio dell'intera sequenza; sequenze come questa sono possibili. Possiamo iniziare la nostra sequenza di interessi in posizioni diverse. Quindi, la mia risposta è .4 n - r n + 1 - r ( n + 1 - r ) / 4 r4n4nrn+1r(n+1r)/4r

Questa probabilità sta aumentando in , il che ha senso per me. Ma questa probabilità supera 1 quando . Ma non può essere. La probabilità dovrebbe avvicinarsi a 1 nel limite (mi sembra), ma non superarla.n > 4 r + r - 1nn>4r+r1

Presumo che sto contando due volte qualcosa. Cosa mi sto perdendo? Grazie.

(Cordiali saluti, non compiti a casa, solo un esempio di giocattolo in preparazione agli esami. Una domanda posta dal mio amico biologo molecolare.)


È esatto che non dovrebbe superare quello poiché ciò violerebbe gli assiomi di probabilità: books.google.com/…
Chris Simokat,

Risposte:


5

Contempliamo una versione ridotta di questo problema con . Qual è la probabilità che una sequenza di cinque lettere contenga il target ? Questo è facile: di tutte le sequenze iniziano con questa stringa, un'altra termina con essa e nessuna sequenza inizia e termina con questa stringa. Pertanto la possibilità è .A C G T 4 - 4 4 - 4 2 × 4 - 4n=5ACGT44442×44

D'altra parte, qual è la possibilità di ? Ancora una volta, delle sequenze iniziano con questa stringa, la stessa proporzione termina con questa stringa e di tutte le sequenze fa entrambe . Pertanto, secondo il principio di inclusione-esclusione, la risposta è .4 - 4 4 - 5 2 × 4 - 4 - 4 - 5AAAA44452×4445

In generale, la risposta dipende dalla struttura della sottostringa. Per essere più specifici, quando si esegue la scansione di una stringa (da sinistra a destra, diciamo) per , si ignorano tutti i caratteri fino a quando non viene visualizzata la iniziale . Dopodiché, ci sono tre possibilità: il personaggio successivo è una corrispondenza per , il successivo è una non corrispondenza per ma non è una (quindi sei di nuovo nello stato di attesa di una ), oppure il prossimo è un non-partita eppure si tratta di un , è messa in solo-sega-an- stato. Al contrario, considera una ricerca di . Supponiamo di aver visto il prefissoA C C A A A A A C T A C G A C T A C G C A A C T A C T AACGTACCAAAAACTACGACTAC. Il carattere successivo corrisponderà se è . Quando si tratta di una non corrispondenza, (i) una ti mette nello stato iniziale di attesa di un , (ii) una ti sta attento a una , e (iii) una significa che hai già visto e sei già a metà partita (e stai cercando la seconda ). La "struttura" pertinente consiste evidentemente in modelli di sottostringhe nel bersaglio che corrispondono al prefisso del bersaglio. Ecco perché le probabilità dipendono dalla stringa di destinazione.GCAACTACTA

I diagrammi FSA che sostengo in una risposta a Time presa per colpire uno schema di teste e code in una serie di lanci di monete possono aiutare a comprendere questo fenomeno.


3

Un'approssimazione approssimativa sarebbe . Prendi la probabilità che la tua sequenza non si verifichi in una determinata posizione, la metti al potere del numero di posizioni (assumendo falsamente l'indipendenza), che è non , e questa è un'approssimazione del suo non avvenire quindi è necessario sottrarlo da . n - r + 1 n - r 11(11/4r)nr+1nr+1nr1

Un calcolo preciso dipenderà dal modello preciso che stai cercando. È più probabile che non si verifichi di .A T C G TAAAAAATCGT


Forse sono solo io, ma sembra un po 'più chiaro in termini di comprensione di come è stata costruita l'equazione. 1(1(1/4)r)n(r1)

@JoeRocc - Sospetto che sia personale. Se leggi da pagina a pagina di un libro, hai letto pagine o pagine? 400300400400 - ( 300 - 1 ) = 101400300+1=101400(3001)=101
Henry,

Nessun problema, stavo solo seguendo la mia intuizione del problema. Se deriviamo intuitivamente un'equazione come , quindi quando provo a spiegarla a qualcuno penso che sia meglio lasciarla così piuttosto che semplificarla in a (anche se questo può certamente rivelarsi più intuitivo se preso in considerazione). La tua intuizione potrebbe essere stata diversa in ogni caso :)a - b + c - 1 + d(a(b(c1+d)))ab+c1+d

2

Stai contando due volte le sequenze che includono più volte la sottosequenza target, ad esempio sia in posizione A che in posizione B! = A. Ecco perché la tua probabilità errata può superare 1


Molto ben fatto ! +1
Michael R. Chernick,

1

È possibile ottenere la probabilità esatta di una sottosequenza particolare utilizzando una rappresentazione a catena di Markov del problema. I dettagli su come costruire la catena dipendono dalla particolare sottosequenza di interesse, ma fornirò un paio di esempi su come farlo.


Probabilità esatta tramite la catena di Markov: considera una sequenza discreta di esiti di A,T,C,G cui gli esiti della sequenza sono scambiabili e supponiamo che siamo interessati ad alcune sottostringhe di lunghezza k . Per un dato valore di n , lasciate W l'evento in cui si verifica la sottostringa di interesse, e sia Ha l'evento che le ultime a risultati sono i primi a<k caratteri nella stringa di interesse (ma non più di questo) . Usiamo questi eventi per dare la seguente partizione di k+1 possibili stati di interesse:

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

Poiché si presume che la sequenza dei risultati sia scambiabile, abbiamo risultati indipendenti subordinati alle rispettive probabilità θA+θT+θC+θG=1 . Il tuo processo di interesse può essere rappresentato come catene di Markov a tempo discreto che iniziano nello State 0 con n=0 e passano secondo una matrice di probabilità che dipende dalla particolare sottostringa di interesse. La matrice di transizione sarà sempre a (k+1)×(k+1)matrice che rappresenta le probabilità di transizione utilizzando gli stati di cui sopra. Se la sottostringa di interesse non è stata raggiunta, ciascuna transizione può farti avvicinare di un passo alla sottostringa o riportarti a uno stato precedente che dipende dalla sottostringa particolare. Una volta raggiunta la sottostringa, questo è uno stato assorbente della catena, che rappresenta il fatto che si è verificato l'evento di interesse.

Ad esempio, se la sottostringa di interesse è UNUNUNUNUNUN la matrice di transizione è:

P=[1-θUNθUN000001-θUN0θUN00001-θUN00θUN0001-θUN000θUN001-θUN0000θUN01-θUN00000θUN0000001.]

Al contrario, se la sottostringa di interesse è UNCTUNsolC la matrice di transizione è:

P=[1-θUNθUN00001-θUN-θCθUNθC00001-θUN-θTθUN0θT0001-θUN000θUN001-θUN-θC-θsolθUNθC00θsol01-θUN-θCθUN0000θC0000001.]

Come si può vedere sopra, la costruzione della matrice di transizione richiede attenzione alla particolare sottostringa. Un risultato errato riporta a uno stato precedente nella stringa che dipende dalla sottostringa particolare di interesse. Una volta costruita la matrice di transizione, per un dato valore di n la probabilità di avere la sottostringa nella catena è P(W|n)={Pn}0,K . (Questa probabilità è zero per tutti n<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

UNUNUNUNUNUNn=1000.01732435

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.