Departamento de Ingeniería Informática Ingeniería Civil en Informática ESTADÍSTICA COMPUTACIONAL Variables aleatorias discretas y distribuciones de probabilidad (Parte 2) Clase 07 monica.villanueva@usacr.cl manuel.villalobos@usacr.cl Departamento de Ingeniería Informática ¿Qué veremos EN ESTA CLASE? • Variables aleatorias discretas y distribuciones de probabilidad (Parte 2): 1. Distribución uniforme discreta. 2. Distribución de Bernoulli. 3. Distribución binomial. 4. Distribuciones geométricas y binomiales negativas. 5. Distribución hipergeométrica. 6. Distribución de Poisson. Contenidos 02 1. Distribución uniforme discreta 1. Distribución uniforme discreta Una variable aleatoria discreta X tiene una distribución uniforme discreta, si para cada valor en su rango tiene igual probabilidad. Entonces: 𝒇 𝒙𝒊 = 𝟏 𝒏 Al suponer que X es una variable aleatoria discreta de enteros consecutivos a, a+1,a+2,…,b, para a ≤ 𝑏. El promedio de X es: 𝝁=𝑬 𝑿 = 𝒃+𝒂 𝟐 Su varianza es: 𝝈𝟐 = 03 𝒃−𝒂+𝟏 𝟏𝟐 𝟐 +𝟏 Distribuciones 1.Distribución uniforme discreta EJEMPLO - Distribución uniforme discreta Ejemplo Una empresa nacional de videojuegos genera ganancias que siguen una distribución uniforme discreta entre los $20 y 25 millones (resolución igual a millones de pesos). A) Calcule la probabilidad de que las ventas del siguiente mes no superen los $22 millones. B) La probabilidad de que las ventas en el siguiente mes superen los 24 millones. C) Calcule el promedio de ventas y desviación estándar. D) ¿Cuántos ingresos se conseguirán como máximo el siguiente mes considerando un 20% de probabilidad? #============================================= #Préambulo: Creación de distribución en R (1/n) #============================================= #Distribución library("extraDistr") millones=seq(15,30) #Defino el rango a graficar distribucion=ddunif(millones, min = 20, max = 25) #Calculo la distribución [20, 25] datos=data.frame(millones,distribucion,acumulado=cumsum(distribucion)) #Gráfico library("ggplot2") grafico = ggplot(data=datos,aes(x=millones,y=distribucion)) grafico = grafico + geom_bar(stat="identity",fill="lightblue3") grafico = grafico + theme_bw() + ggtitle("Distribución de probabilidades") grafico = grafico + xlab("Millones en ventas") + ylab("Probabilidad") plot(grafico) Respuestas • Pregunta A: 3/6 • Pregunta B: 1/6 • Pregunta C: 22.5± 1.7 millones • Pregunta D: $21 millones #============================================= # Pregunta A - P(x<=22) - pdunif #============================================= preguntaA = pdunif(q=22, min = 20, max = 25, lower.tail = TRUE) print(preguntaA) #============================================= # Pregunta B - 1-P(x<=24) - pdunif #============================================= preguntaB = pdunif(q=24, min = 20, max = 25, lower.tail = FALSE) print(preguntaB) #============================================= # Pregunta C #============================================= preguntaC1 = mean(millones) preguntaC2 = sqrt(((25-20+1)^2-1)/12) print(preguntaC1) print(preguntaC2) #============================================= # Pregunta D - P(X<=?) = 0.25 - qdunif #============================================= preguntaD = qdunif(p=0.2, min = 20, max = 25, lower.tail = TRUE) print(preguntaD) 04 2. Distribución de Bernoulli 2. Distribución Bernoulli Una distribución de Bernoulli considera una variable aleatoria X que mide el número de éxitos de un único experimento aleatorio considerando dos eventos posibles. 𝒇 𝒙 = 𝒑𝒙 (𝟏 − 𝒑)𝟏−𝒙 Donde x = 0,1 , y 𝒇 𝒙 ቊ 𝒑, 𝑺𝒊 𝒙 = 𝟏 𝒒, 𝑺𝒊 𝒙 = 𝟎 Distribuciones 05 2. Distribución de Bernoulli Ejemplo EJEMPLO - Distribución de Bernoulli En mi refrigerador hay 12 cervezas, 3 Brewmeister Snake Venom y 9 Cristal. ¿Cuál es la probabilidad de que si tomo una cerveza al azar en la oscuridad ésta sea Brewmeister Snake Venom? 𝒑 𝒙 = 𝟏 = 𝒑𝒙 𝟏 − 𝒑 𝒙 𝒑 𝒙= 𝟎 = 𝒑 𝟏−𝒑 𝟏−𝒙 𝟑𝟏 𝟑 𝟏 = (𝟏 − )𝟏−𝟏 = 𝟏𝟐 𝟏𝟐 𝟒 𝟏−𝒙 𝟑𝟎 𝟑 𝟑 = (𝟏 − )𝟏−𝟎 = 𝟏𝟐 𝟏𝟐 𝟒 #======================== # Preámbulo #======================== library("Rlab") rango = seq(-5,5) distribucion = dbern(rango, prob = 3/12) datos=data.frame(rango,distribucion) #Gráfico library("ggplot2") grafico = ggplot(data=datos,aes(x=rango,y=distribucion)) grafico = grafico + geom_bar(stat="identity",fill="lightblue3") grafico = grafico + theme_bw() + ggtitle("Distribución de probabilidades") grafico = grafico + xlab("Rango") + ylab("Probabilidad") plot(grafico) #======================== # Pregunta 1 #======================== prob_BSV=dbern(1, 3/12, log = FALSE) prob_CC=dbern(0, 3/12, log = FALSE) 06 3. Distribución binomial 3. Distribución binomial La distribución binomial cuenta el número de éxitos en una secuencia de n ensayos de Bernoulli independientes entre sí, con una probabilidad fija p de ocurrencia del éxito entre los ensayos. 𝒇 𝒙 = 𝒏! 𝒏 𝒙 𝒑 (𝟏 − 𝒑)𝒏−𝒙 = 𝒑𝒙 (𝟏 − 𝒑)𝒏−𝒙 𝒙 𝒙! 𝒏 − 𝒙 ! Donde x = 0,1,2,3 … , n Su media y varianza se pueden calcular como: 𝝁 = 𝑬 𝑿 = 𝒏𝒑 𝝈𝟐 = 𝑽 𝑿 = 𝒏𝒑(𝟏 − 𝒑) Distribuciones 07 3. Distribución binomial Ejemplo EJEMPLO - Distribución binomial Según cifras de la Comisión Nacional del Tránsito durante el año 2019 en nuestro país se produjeron 89,983 accidentes de tránsito, teniendo un parque automotriz de 5,718,409 ¿Cuál es la probabilidad de que si este año todas las personas del curso usamos autos diferentes, una de ellas tenga un accidente? Considere 30 personas. • La probabilidad de que un auto tenga un accidente es: 89,983/5,718,409 = 0.01573567 ≈ 0.02 𝒇 𝒙 = 𝒏 𝒙 𝟑𝟎 𝒑 (𝟏 − 𝒑)𝒏−𝒙 = 𝟎. 𝟎𝟐𝟏 (𝟏 − 𝟎. 𝟎𝟐)𝟑𝟎−𝟏 = 𝟏! 𝒙 𝟏 𝟑𝟎! 𝟑𝟎−𝟏 ! 𝟎. 𝟎𝟐𝟏 (𝟏 − 𝟎. 𝟎𝟐)𝟑𝟎−𝟏 = 𝟑𝟎 × 𝟎. 𝟎𝟐 × (𝟎. 𝟗𝟖)𝟐𝟗 = 𝟎. 𝟑𝟑𝟑𝟗𝟕 #======================== # Preámbulo #======================== library("Rlab") rango = seq(0,30) distribucion = dbinom(rango, size = 30,prob = 0.02) datos=data.frame(rango,distribucion) #Gráfico library("ggplot2") grafico = ggplot(data=datos,aes(x=rango,y=distribucion)) grafico = grafico + geom_bar(stat="identity",fill="lightblue3") grafico = grafico + theme_bw() + ggtitle("Distribución de probabilidades") grafico = grafico + xlab("Rango") + ylab("Probabilidad") plot(grafico) #======================== # Pregunta 1 #======================== pregunta1 = dbinom(1, size = 30,prob = 0.02) print(pregunta1) 08 #======================== # Probabilidad de que tod@s nos accidentemos #======================== todos = dbinom(30, size = 30,prob = 0.02) print(todos) https://www.conaset.cl/programa/observatorio-datos-estadistica/biblioteca-observatorio/estadisticas-generales/ Respuestas • Un@: 0.33397 • Tod@s: 1.07 × 10−51 4. Distribución geométrica y binomial negativa 4. Distribución geométrica y binomial negativa Una distribución geométrica calcula el número de experimentos (sin éxito) que debemos realizar para obtener un primer evento favorable usando una distribución de Bernoulli. Esto es, considerando 𝒇 𝒙 = 𝒑(𝟏 − 𝒑)𝒙−𝟏 Donde x = 0,1,2,3 … , y su métricas son: 𝝁=𝑬 𝑿 = 𝟏 𝒑 𝝈𝟐 = 𝑽 𝑿 = (𝟏 − 𝒑) 𝒑𝟐 Una distribución binomial negativa es una extensión del caso anterior, correspondiendo al número de ensayos que debemos realizar hasta obtener r casos favorables. 𝒇 𝒙 = 𝒙−𝟏 𝒓 𝒑 (𝟏 − 𝒑)𝒙−𝒓 𝒓−𝟏 Donde r = 1,2,3 … y x = 𝑟, 𝑟 + 1, 𝑟 + 2, … . Sus métricas son: 𝝁=𝑬 𝑿 = 09 𝒓 𝒑 𝝈𝟐 = 𝑽 𝑿 = 𝒓(𝟏 − 𝒑) 𝒑𝟐 Distribuciones 4. Distribución geométrica y binomial negativa EJEMPLO - Distribución geométrica y binomial negativa 1. Una pareja sin problemas de fertilidad que mantiene relaciones sexuales en época fértil tiene un 25% de probabilidades de conseguir un embarazo en un mes. ¿Cuál es la probabilidad de que al quinto mes se produzca recién el embarazo? Respuesta La probabilidad de la pareja no consiga ser padres luego de 4 meses es aproximadamente 0.079. 𝒇 𝒙 = 𝒑(𝟏 − 𝒑)𝒙−𝟏= 𝟎. 𝟐𝟓(𝟏 − 𝟎. 𝟐𝟓)𝟓−𝟏 ≈0.079 #======================== # Preámbulo #======================== library("Rlab") meses = seq(0,12) distribucion = dgeom(x=meses, prob=0.25) datos=data.frame(meses,distribucion) #Gráfico library("ggplot2") grafico = ggplot(data=datos,aes(x=meses,y=distribucion)) grafico = grafico + geom_bar(stat="identity",fill="lightblue3") grafico = grafico + theme_bw() + ggtitle("Distribución de probabilidades") grafico = grafico + xlab("Meses") + ylab("Probabilidad") plot(grafico) #======================== # Pregunta 1 #======================== print(dgeom(x=4, prob=0.25)) 2. Una familia desea planificar los nacimientos de sus descendientes. Calcular la probabilidad de que se necesiten 4 nacimientos para conseguir dos mujeres de sexo biológico. Respuesta La probabilidad de la pareja tenga dos mujeres al 4 nacimiento es 0.1875. 𝒇 𝒙 = 10 Ejemplo 𝒙−𝟏 𝒓 𝟒−𝟏 𝒑 (𝟏 − 𝒑)𝒏−𝒓 = 𝟎. 𝟓𝟐 (𝟏 − 𝟎. 𝟓)𝟒−𝟐 = 𝟎. 𝟏𝟖𝟕𝟓 𝒓−𝟏 𝟐−𝟏 #======================== # Preámbulo #======================== library("Rlab") hijas = seq(0,10) intentos_fallidos=2 distribucion = dnbinom(x=hijas, size=intentos_fallidos, prob=0.5) datos=data.frame(hijas,distribucion) #Gráfico library("ggplot2") grafico = ggplot(data=datos,aes(x=hijas,y=distribucion)) grafico = grafico + geom_bar(stat="identity",fill="lightblue3") grafico = grafico + theme_bw() + ggtitle("Distribución de probabilidades") grafico = grafico + xlab("Hijas") + ylab("Probabilidad") plot(grafico) #======================== # Pregunta 1 #======================== print(dnbinom(x=2, size=2, prob=0.5)) 5. Distribución hipergeométrica 5. Distribución hipergeométrica Para un conjunto de N elementos, con: K elementos asociados al evento exitoso. N-K elementos asociados al evento fallido. Se selecciona una muestra de objetos de tamaño n del conjunto N (sin reposición), donde K ≤ N y n ≤ N. La variable aleatoria X que es igual al número de aciertos en la muestra es una variable aleatoria hipergeométrica que cumple: 𝑲 𝒇 𝒙 = 𝒙 𝑵−𝑲 𝒏−𝒙 𝑵 𝒏 Donde x = max 0, 𝑛 + 𝐾 − 𝑁 al min 𝐾, 𝑛 . Sus métricas son: 𝝁 = 𝑬 𝑿 = 𝒏𝒑 𝝈𝟐 = 𝑽 𝑿 = 𝒏𝒑 𝟏 − 𝒑 𝑵−𝒏 , 𝒑 = 𝑲/𝑵 𝑵−𝟏 Distribuciones 13 5. Distribución hipergeométrica EJEMPLO - Distribución hipergeométrica Para un componente específico de un automóvil, una empresa de repuestos tiene un stock de 10 elementos del fabricante A y 20 elementos del fabricante B. Si se venden 4 productos de este tipo, ¿cuál es la probabilidad de que tres de ellas sean del proveedor A? Respuesta La probabilidad de que luego de 4 ventas, 3 repuestos sean del fabricante A es aproximadamente 0.088. 𝑲 𝒇 𝒙 = 𝒙 𝟏𝟎 𝒇 𝒙 = 𝟑 𝑵−𝑲 𝒏−𝒙 𝑵 𝒏 𝟑𝟎 − 𝟏𝟎 𝟒−𝟑 𝟑𝟎 𝟒 𝟎. 𝟎𝟖𝟕𝟓𝟕𝟓𝟐𝟔 12 Ejemplo #======================== # Preámbulo #======================== library("Rlab") provedorA=10 #Exitos provedorB=20 #Fracasos ventas=4 #Experimentos exitos=seq(0:10) #Exitos distribucion = dhyper(x=exitos, m=provedorA, k=ventas, n=provedorB) datos=data.frame(exitos,distribucion) #Gráfico library("ggplot2") grafico = ggplot(data=datos,aes(x=exitos,y=distribucion)) grafico = grafico + geom_bar(stat="identity",fill="lightblue3") grafico = grafico + theme_bw() + ggtitle("Distribución de probabilidades") grafico = grafico + xlab("Productos de A") + ylab("Probabilidad") plot(grafico) #======================== # Pregunta 1 #======================== exitos=3 #Exitos print(dhyper(x=exitos, m=provedorA, k=ventas, n=provedorB)) 6. Distribución de Poisson 6. Distribución de Poisson Expresa, a partir de una frecuencia de ocurrencia media (λ), la probabilidad de que ocurra un determinado número de eventos durante cierto período de tiempo (k). Concretamente, se especializa en la probabilidad de ocurrencia de sucesos con probabilidades muy pequeñas, o sucesos “raros”. 𝒇 𝒙 = 𝒆−𝝀𝑻 (𝝀𝑻)𝒙 𝒙! k es el número de ocurrencias del evento o fenómeno λ, es un parámetro positivo que representa el número de veces que se espera que ocurra el fenómeno durante un intervalo dado. Donde x = 0, 1, 2 … Sus métricas son: 𝝁 = 𝑬 𝑿 = 𝝀𝑻 𝝈𝟐 = 𝑽 𝑿 = 𝝀𝑻 Distribuciones 13 6. Distribución de Poisson Ejemplo EJEMPLO - Distribución de Poisson En un peaje un empleado atiente en promedio a 30 personas por hora ¿cuál es la probabilidad que en la siguiente hora atienda solo a 20 personas? (k = 20, λ = 30) Respuesta La probabilidad de que lleguen 20 autos al peaje en una hora es 0.01341115. 𝒇 𝒙 = 𝒆 −𝝀𝑻 (𝝀𝑻) 𝒙! 𝒙 𝒆−𝟑𝟎∗𝟏 (𝟑𝟎 × 𝟏)𝟐𝟎 𝒇 𝒙 = 𝟐𝟎! 𝒇 𝒙 = 𝟎. 𝟎𝟏𝟑𝟒𝟏𝟏𝟏𝟓 14 #======================== # Preámbulo #======================== library("Rlab") autos=seq(1:40) lambda=30 distribucion = dpois(autos,lambda) datos=data.frame(autos,distribucion) #Gráfico library("ggplot2") grafico = ggplot(data=datos,aes(x=autos,y=distribucion)) grafico = grafico + geom_bar(stat="identity",fill="lightblue3") grafico = grafico + theme_bw() + ggtitle("Distribución de probabilidades") grafico = grafico + xlab("Autos") + ylab("Probabilidad") plot(grafico) #======================== # Pregunta 1 #======================== print((exp(-30)*30^20)/factorial(20)) print(dpois(20,lambda)) Departamento de Ingeniería Informática Ingeniería Civil en Informática ESTADÍSTICA COMPUTACIONAL Variables aleatorias discretas y distribuciones de probabilidad (Parte 2) Clase 07 monica.villanueva@usacr.cl manuel.villalobos@usacr.cl