Estar en racha (y promediar promedios)

Suponemos que observamos rachas de longitud 2 + rpois(1, 10) de un juego en el que se tiene éxito (1) o se fracasa (0) con probabilidad 1/2. Nos interesa saber si existe eso de las rachas de suerte, es decir, si es más probable que a un éxito le suceda otro o lo contrario.

El observador ve rachas y calcula el número de veces que a un éxito le sigue un éxito y el número de veces que a un éxito le sigue un fracaso así:

racha <- function(){
    n.tiros <- 2 + rpois(1, 10)
    x <- rbinom(n.tiros, 1, 0.5)
    #print(x)
    uno.uno  <- sapply(1:(n.tiros - 1),
                        function(i) all(x[i:(i+1)] == c(1,1)))
    uno.cero <- sapply(1:(n.tiros - 1),
                        function(i) all(x[i:(i+1)] == c(1,0)))

    c(sum(uno.cero), sum(uno.uno))
}

res <- data.frame(t(replicate(100000, racha())))

Por supuesto, ignora los casos en que no sucede ningún éxito, donde no hay sustancia para distinguir si hay o no rachas:

res <- res[rowSums(res) > 0, ]

Y sí, como cabe esperar, el número de secuencias éxito-éxito viene ser el mismo que el de secuencias éxito-fracaso:

colSums(res)
#    X1     X2
# 274366 275400

Ahora bien, nuestro observador no es capaz de sumar el número de combinaciones éxito-éxito y éxito-fracaso. Nuestro observador ve las tiradas una a una y calcula las probabilidades de obtener una combinación éxito-éxito, es decir,

probs <- res[,2] / (rowSums(res))

y en su cabeza se hace una idea de lo probable que es una racha éxito-éxito promediando dichas probabilidades así:

mean(probs)

¿Qué obtiene? Un medio, ¿verdad?

Pues no.