Ejercicios de probabilidad y el Teorema de Bayes

El teorema de Bayes, en la teoría de la probabilidad, es una proposición planteada por el matemático inglés Thomas Bayes y publicada póstumamente en 1763 que expresa la probabilidad condicional de un evento aleatorio A dado B en términos de la distribución de probabilidad condicional del evento B dado A y la distribución de probabilidad marginal de solo A.

Lanzamiento de una moneda 10 veces, calcular la probabilidad de cara (0).

tabla=sample(0:1, 10, replace=TRUE)
print(tabla)
##  [1] 1 1 0 0 0 1 1 0 0 0
prop.table(table(tabla))
## tabla
##   0   1 
## 0.6 0.4

Si se repite ese experimento aumentando el número de lanzamientos (probabilidad frecuentista)

lanza_moneda=function(n){
tabla=sample(0:1, n, replace=TRUE)
p=prop.table(table(tabla))
return(p[1])
}

lanza_moneda(10)
##   0 
## 0.4
p=sapply(10:1000, lanza_moneda)
n=10:1000
plot(n,p,type="l")
abline(h=0.5,col="red")

Probabilidad condicional

a=85
b=65
c=45
d=55
hombres=a+b
mujeres=c+d
alcohol=a+c
Nalcohol=b+d
n=a+b+c+d

Probabilidades de seleccionar a un hombre

h=hombres/n
h
## [1] 0.6

Probabilidad de consumir alcohol

al=alcohol/n
al
## [1] 0.52

Probabilidad de seleccionar a una mujer

m=1-(hombres/n)
m
## [1] 0.4

Probabilidad de NO consumir alcohol

Nal=1-(alcohol/n)
Nal
## [1] 0.48

Probabilidad de seleccionar a un hombre O una persona consumidora de alcohol

p1=h+al-(a/n)
p1
## [1] 0.78

Probabilidad de seleccionar una mujer o una persona que no consuma alcohol

p2=m+Nal-(d/n)
p2
## [1] 0.66

Dado que se seleccionó una mujer, cuál es la probabilidad de que consuma alcohol

p3=(c/n)/m
p3
## [1] 0.45

Valores predictivos

Ejercicio #1

tabla=as.table(matrix(c(a,b,c,d), nrow=2, byrow=TRUE))
colnames(tabla)=c("Enfermo", "Sano")
rownames(tabla)=c("Positivo", "Negativo")
tabla
##          Enfermo Sano
## Positivo      85   65
## Negativo      45   55
a=120
b=140
c=480
d=260

matrix(c(a,b,c,d), nrow=2, byrow=TRUE)
##      [,1] [,2]
## [1,]  120  140
## [2,]  480  260
tabla1=as.table(matrix(c(a,b,c,d), nrow=2, byrow=TRUE))
colnames(tabla1)=c("niña", "niño")
rownames(tabla1)=c("menor24", "mayor24")
tabla1
##         niña niño
## menor24  120  140
## mayor24  480  260