1 Objetivo

Calcular la función de densidad y la función de probabilidad probabilidad acumulada bajo la fórmula de distribución de hipergeométrica.

2 Descripción

Realizar distribuciones de probabilidad conforme a la distribución de probabilidad de Hipergeométrica a partir de valores iniciales de los ejercicios.

Se generan las tablas de probabilidad conforme a distribución hipergeométrica, se identifican los valores de probabilidad cuando la variable discreta x tenga algún exactamente algún valor, ≤ a algún valor o > o ≥, entre otros.

Se utilizan las funciones base dhyper() y phyper() para la probabilidad y función acumulada de la distribución hipergeométrica.

Se utiliza también de manera alternativa la función del enlace f.prob.hiper() https://raw.githubusercontent.com/rpizarrog/probabilidad-y-estad-stica/master/funciones/funciones.distribuciones.r que permite calcular la probabilidad de una variable aleatoria discreta bajo la distribución hipergeométrica y conforme a la fórmula.

3 Desarrollo

Se presentan ejercicios de distribuciones hipergeométricas, mostrando tablas de distribución y gráfica de la misma, se calculan probabilidades, valores esperados, varianza y desviaciones. Al final se busca la interpretación de cada ejercicio.

3.1 Cargar librerias

Para nuevas librerías se requiere instalar con anticipación, ejemplo, install.packages(“cowplot”).

library(dplyr)
## Warning: package 'dplyr' was built under R version 4.0.4
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.0.4
library(mosaic) # Gráficos de distribuciones
## Warning: package 'mosaic' was built under R version 4.0.5
## Registered S3 method overwritten by 'mosaic':
##   method                           from   
##   fortify.SpatialPolygonsDataFrame ggplot2
## 
## The 'mosaic' package masks several functions from core packages in order to add 
## additional features.  The original behavior of these functions should not be affected by this.
## 
## Attaching package: 'mosaic'
## The following object is masked from 'package:Matrix':
## 
##     mean
## The following object is masked from 'package:ggplot2':
## 
##     stat
## The following objects are masked from 'package:dplyr':
## 
##     count, do, tally
## The following objects are masked from 'package:stats':
## 
##     binom.test, cor, cor.test, cov, fivenum, IQR, median, prop.test,
##     quantile, sd, t.test, var
## The following objects are masked from 'package:base':
## 
##     max, mean, min, prod, range, sample, sum
library(cowplot) #Imágenes en el mismo renglón
## Warning: package 'cowplot' was built under R version 4.0.5
## 
## Attaching package: 'cowplot'
## The following object is masked from 'package:mosaic':
## 
##     theme_map
options(scipen=999) # Notación normal

# options(scipen=1) # Notación científica

3.2 Cargar funciones

#source("../funciones/funciones.distribuciones.r")

# o

source("https://raw.githubusercontent.com/rpizarrog/probabilidad-y-estad-stica/master/funciones/funciones.distribuciones.r")
## 
## Attaching package: 'gtools'
## The following object is masked from 'package:mosaic':
## 
##     logit

3.3 Fábrica de fusibles

Una empresa fabrica fusibles que empaca en cajas de 12 unidades cada una.

  • Asuma que un inspector selecciona al azar 3 de los 12 fusibles de una caja para inspeccionarlos.

  • Si la caja contiene exactamente 5 fusibles defectuosos,

  • En este ejercicio:

  • \(n=5\) es el Número de casos exitosos

  • \(N=12\) Total de elementos

  • \(r=3\) Extracción de la muestra

  • \(x\) es la cantidad fusibles defectuosos como variable aleatoria discreta, desde \(0\) hasta \(n\) o hasta un valor específico (Anderson, Sweeney, and Williams 2008).

3.3.1 Tabla de probabilidad desde cero a tres

Primero inicializar valores

N <- 12 
n <- N - 5
r <- 3
x <- 0:r

Distribución de la probabilidad por medio de la función creada llamada f.prob.hiper() y con cumsum()

tabla1 <- data.frame(x=x, f.prob.x = f.prob.hiper(x = x, N = N, n = n, r = r))

tabla1 <- cbind(tabla1, f.acum.x = cumsum(tabla1$f.prob.x))
tabla1
##   x   f.prob.x   f.acum.x
## 1 0 0.04545455 0.04545455
## 2 1 0.31818182 0.36363636
## 3 2 0.47727273 0.84090909
## 4 3 0.15909091 1.00000000
  • Distribución de la probabilidad por medio de la función base de R llamada dhyper()
  • Deben generarse los mismos datos en tabla1 y tabla2
m <-n; N <-N; k <- r; n <- N - m

tabla2 <- data.frame(x=x, f.prob.x = round(dhyper(x = x,m = m, n = n, k = k), 8))

tabla2 <- cbind(tabla2, f.acum.x = round(phyper(q = x,m = m, n = n, k = k), 8))

tabla2
##   x   f.prob.x   f.acum.x
## 1 0 0.04545455 0.04545455
## 2 1 0.31818182 0.36363636
## 3 2 0.47727273 0.84090909
## 4 3 0.15909091 1.00000000

3.3.2 Gráfica de probabilidad

Se presentan la gráfica de probabilidad y la probabilidad acumulada en g1 y g2 respectivamente.

g1 <- ggplot(data = tabla2, aes(x,f.prob.x) ) +
  geom_point(colour = "red") +
  geom_line(colour = 'blue') +
  ggtitle("Función de densidad P(x)")
#g1

g2 <- ggplot(data = tabla2, aes(x,f.acum.x) ) +
  geom_point(colour = "red") +
  geom_line(colour = 'blue') +
  ggtitle("Función acumulada F(x)")
#g2

plot_grid(g1, g2)

3.3.3 Probabilidad uno de tres

¿Cuál es la probabilidad de que el inspector encuentre que uno de los tres fusibles está defectuoso?

Utilizando la tabla de distribución.

x <- 1
prob <- tabla2$f.prob.x[x+1]

paste("La probabilidad de que el inspector encuentre que uno de los tres fusibles está defectuoso es: ", round(prob * 100,4), "%")
## [1] "La probabilidad de que el inspector encuentre que uno de los tres fusibles está defectuoso es:  31.8182 %"

Utilizando dhyper()

prob <- dhyper(x = 1, m = m, n = n, k = k)

paste("La probabilidad de que el inspector encuentre que uno de los tres fusibles está defectuoso es: ", round(prob * 100,4), "%")
## [1] "La probabilidad de que el inspector encuentre que uno de los tres fusibles está defectuoso es:  31.8182 %"

3.3.4 Probabilidad de menos de tres fusibles

¿Cuál es la probabilidad de encontrar menos de tres fusibles defectuosos

\[P(x≤2)=P(X=0)+P(x=1)+P(x=2)\] o la función acumulada hasta tres \[F(x=3)\]

Utilizando la tabla de distribución

x <- 2
prob <- tabla2$f.acum.x[x+1]

paste("La probabilidad de menos de tres fusibles: ", round(prob * 100,4), "%")
## [1] "La probabilidad de menos de tres fusibles:  84.0909 %"

Utilizando sum(dhyper())

prob <- sum(dhyper(x = 0:x, m = m, n = n, k = k))

paste("La probabilidad de menos de tres fusibles: ", round(prob * 100,4), "%")
## [1] "La probabilidad de menos de tres fusibles:  84.0909 %"

Utilizando phyper()

prob <- phyper(q = x, m = m, n = n, k = k)
paste("La probabilidad de que el inspector encuentre que uno de los tres fusibles está defectuoso es: ", round(prob * 100,4), "%")
## [1] "La probabilidad de que el inspector encuentre que uno de los tres fusibles está defectuoso es:  84.0909 %"

3.3.5 Valor esperado

¿Cuál es el valor esperado?

Mandar llamar la función creada anticipadamente f.va.hiper() que se encuentra en https://github.com/rpizarrog/probabilidad-y-estad-stica/blob/master/funciones/funciones.distribuciones.r

N <- 12 
n <- 3
r <- 5
VE <- f.va.hiper(n = n, N = N, r = r)

paste("El valor esperado o media de este ejercicios es de: ", VE)
## [1] "El valor esperado o media de este ejercicios es de:  1.25"

3.3.6 Varianza y desviación

¿Cuál es la varianza y la desviación estándar?. También se utilizan las funciones previamente preparadas.

varianza <- f.varianza.hiper(VE = VE, n = 3, N = 12, r = 5)

desvstd <- sqrt(varianza)

paste("El valor de la varianza es de: ", round(varianza,4), " y la desviación std es de: ", round(desvstd, 4))
## [1] "El valor de la varianza es de:  0.5966  y la desviación std es de:  0.7724"

3.3.7 Interpretación

Existe una probabilidad de aproximadamente 47.72% de que un fusible sea defectuoso, una probabilidad aproximada del 95% de que encontremos fusibles defectuosos menores a 3 componentes, el Valor esperado de 1.25 significa lo que en promedio se espera que suceda por cualquier valor de la variable discreta.

La varianza es de 0.5966 y la desviación es de 0.7724 significan el grado de dispersión de los valores de la distribución o qué tanto se alejan del valor medio en la distribución de probabilidad en este caso hipergeométrica.

3.4 Lote de Componentes

Lotes con 40 componentes cada uno que contengan 3 o más defectuosos se consideran inaceptables. El procedimiento para obtener muestras del lote consiste en seleccionar 5 componentes al azar y rechazar el lote si se encuentra un componente defectuoso. En todo el lote hay \(3\) defectuosos (Camacho Avila 2019), (Walpole, Myers, and Myers 2012b)

  • \[n=3\],
  • \[N=40\],
  • \[k=5\] y
  • \[x=0,1,2,3,4...n\]

3.4.1 Tabla de probabilidad desde cero a cinco

  • Primero inicializar valores
N <- 40
m  <- n <- 3
r <- 5
x <- 0:n

m <-n; N <-N; k <- r; n <- N - m
  • Se construye la tabla de distribución
tabla <- data.frame(x=x, f.prob.x = round(dhyper(x = x,m = m, n = n, k = k), 8))

tabla <- cbind(tabla, f.acum.x = cumsum(tabla$f.prob.x))

tabla
##   x   f.prob.x  f.acum.x
## 1 0 0.66244939 0.6624494
## 2 1 0.30111336 0.9635628
## 3 2 0.03542510 0.9989879
## 4 3 0.00101215 1.0000000

3.4.2 Gráfica de probabilidad

g1 <- ggplot(data = tabla, aes(x,f.prob.x) ) +
  geom_point(colour = "red") +
  geom_line(colour = 'blue') +
  ggtitle("Función de densidad P(x)")
#g1

g2 <- ggplot(data = tabla, aes(x,f.acum.x) ) +
  geom_point(colour = "red") +
  geom_line(colour = 'blue') +
  ggtitle("Función acumulada F(x)")
#g2

plot_grid(g1, g2)

3.4.3 Probabilidad de exactamente un componente

¿Cuál es la probabilidad de que, en la muestra, se encuentre exactamente un componente defectuoso, si en todo el lote hay 3 defectuosos?. P(x=1)

x <- 1
prob <- tabla$f.prob.x[x+1]

paste("La probabilidad de que, en la muestra, se encuentre exactamente un componente defectuoso de tres es: ", round(prob * 100,4), "%")
## [1] "La probabilidad de que, en la muestra, se encuentre exactamente un componente defectuoso de tres es:  30.1113 %"

3.4.4 Probabilidad de al menos tres

¿Cuál es la probabilidad de encontrar menos de tres componentes defectuosos \[P(x≤3)=P(x=0)+P(x=1)+P(x=2)+P(x=3)\] o la función acumulada \[F(x=3)\]

x <- 3
prob <- phyper(q = x,m = m, n = n, k = k)
paste ("La probabilidad de encontrar menos de tres componentes", round(prob, 4))
## [1] "La probabilidad de encontrar menos de tres componentes 1"

3.4.5 ¿Cuál es el valor esperado?

VE <- f.va.hiper(n = n, N = N, r = r)

paste("El valor esperado o media de este ejercicios es de: ", VE)
## [1] "El valor esperado o media de este ejercicios es de:  4.625"

3.4.6 ¿Cuál es la varianza y la desviación estándar?

varianza <- f.varianza.hiper(VE = VE, n = 3, N = 12, r = 5)

desvstd <- sqrt(varianza)

paste("El valor de la varianza es de: ", round(varianza,4), " y la desviación std es de: ", round(desvstd, 4))
## [1] "El valor de la varianza es de:  2.2074  y la desviación std es de:  1.4857"

3.4.7 Interpretación

En este ejercicio en su contexto, sólo 30% de las veces detecta un lote malo (con 3 componentes defectuosos). (Camacho Avila 2019).

3.5 Artículos defectuosos

Se tiene un lote de 100 artículos de los cuales 12 están defectuosos. Se extraen lotes de 10.

3.5.1 Tabla de distribución

  • Primero inicializar valores
N <- 100
m <- n <- 12
r <- 10
x <- 0:n

m <-n; N <-N; k <- r; n <- N - n
  • Distribución de la probabilidad por medio de la función creada llamada f.prob.hiper()
tabla <- data.frame(x=x, f.prob.x = round(dhyper(x = x, m = m, n = n, k = r), 8))

tabla <- cbind(tabla, f.acum.x = cumsum(tabla$f.prob.x))
tabla
##     x   f.prob.x  f.acum.x
## 1   0 0.26075027 0.2607503
## 2   1 0.39607636 0.6568266
## 3   2 0.24507225 0.9018989
## 4   3 0.08068222 0.9825811
## 5   4 0.01549689 0.9980780
## 6   5 0.00179241 0.9998704
## 7   6 0.00012447 0.9999949
## 8   7 0.00000502 0.9999999
## 9   8 0.00000011 1.0000000
## 10  9 0.00000000 1.0000000
## 11 10 0.00000000 1.0000000
## 12 11 0.00000000 1.0000000
## 13 12 0.00000000 1.0000000

3.5.2 Gráfica de probabilidad

g1 <- ggplot(data = tabla, aes(x,f.prob.x) ) +
  geom_point(colour = "red") +
  geom_line(colour = 'blue') +
  ggtitle("Función de densidad P(x)")
#g1

g2 <- ggplot(data = tabla, aes(x,f.acum.x) ) +
  geom_point(colour = "red") +
  geom_line(colour = 'blue') +
  ggtitle("Función acumulada F(x)")
#g2

plot_grid(g1, g2)

3.5.3 Probabilidad de tres defectuosos

¿Cuál es la probabilidad de que haya 3 defectuosos en una muestra de 10? \[P(x=3)\]

x <- 3
prob <- tabla$f.prob.x[x+1]

paste("La probabilidad de que haya 3 defectuosos en una muestra de 10 es de", prob)
## [1] "La probabilidad de que haya 3 defectuosos en una muestra de 10 es de 0.08068222"

Con la función dhyper()

x <- 3
dhyper(x = x, m = m, n = n, k = k)
## [1] 0.08068222
paste("La probabilidad de que haya 3 defectuosos en una muestra de 10 es de", prob)
## [1] "La probabilidad de que haya 3 defectuosos en una muestra de 10 es de 0.08068222"

3.5.4 Valor esperado

¿Cuál es el valor esperado?

VE <- f.va.hiper(n = n, N = N, r = r)

paste("El valor esperado o media de este ejercicios es de: ", VE)
## [1] "El valor esperado o media de este ejercicios es de:  8.8"

3.5.5 Varianza y desviación

¿Cuál es la varianza y la desviación estándar?

varianza <- f.varianza.hiper(VE = VE, n = 3, N = 12, r = 5)

desvstd <- sqrt(varianza)

paste("El valor de la varianza es de: ", round(varianza,4), " y la desviación std es de: ", round(desvstd, 4))
## [1] "El valor de la varianza es de:  4.2  y la desviación std es de:  2.0494"

3.5.6 Interpretación

Se encontró que hay la probabilidad del 26.07% de que en el primer lote se encuentre al menos un artículo defectuoso y ya en el décimo lote se tiene asegurado que se hallan repartido los doce artículos defectuosos, luego se calculó la probabilidad de que en un mismo lote de 10 se encuentren tres artículos defectuosos, dándonos un valor muy bajo, del 8.06%, el valor esperado nos dice que para el lote 8.8 (o 9 redondeando) ya se hallan repartido los doce artículos defectuosos.

3.6 Estudiante de leyes

Un estudiante tiene que preparar cien temas. En el examen se sacan tres a sorteo, de los cuales deberá exponer uno y aprobar al menos uno. El estudiante decide estudiar o preparar solamente la mitad y probar suerte. (quintela2019?).

3.6.1 Tabla de distribución

  • Valores iniciales
N <- 100
n <- 3
r <- 50 
x <- 0:n

m <-n; N <-N; k <- r; n <- N - n

Se construye la tabla de distribución

tabla <- data.frame(x=x, f.prob.x = round(dhyper(x = x, m = m, n = n, k = r), 8))

tabla <- cbind(tabla, f.acum.x = cumsum(tabla$f.prob.x))
tabla
##   x  f.prob.x  f.acum.x
## 1 0 0.1212121 0.1212121
## 2 1 0.3787879 0.5000000
## 3 2 0.3787879 0.8787879
## 4 3 0.1212121 1.0000000

3.6.2 Gráfica de probabilidad

g1 <- ggplot(data = tabla, aes(x,f.prob.x) ) +
  geom_point(colour = "red") +
  geom_line(colour = 'blue') +
  ggtitle("Función de densidad P(x)")
#g1

g2 <- ggplot(data = tabla, aes(x,f.acum.x) ) +
  geom_point(colour = "red") +
  geom_line(colour = 'blue') +
  ggtitle("Función acumulada F(x)")
#g2

plot_grid(g1, g2)

3.6.3 Probabilidad de que no apruebe

Se calcula la probabilidad cuando \[P(x=0)\]

prob <- dhyper(x = 0, m = m, n = n, k = k)
paste ("La probabilidad de que no apruebe es de: ", prob, " o sea ", round(prob*100, 4), "%")
## [1] "La probabilidad de que no apruebe es de:  0.121212121212121  o sea  12.1212 %"

3.6.4 Probabilidad de que apruebe

Se requiere al menos 1 de los temas, o lo que es lo mismo \[1−F(x=0)\]

prob <- 1 - phyper(q = 0, m = m, n = n, k = k)
paste ("La probabilidad de que apruebe es de: ", prob, " o sea ", round(prob*100, 4), "%")
## [1] "La probabilidad de que apruebe es de:  0.878787878787879  o sea  87.8788 %"

O se puede usar la función phyper() con el parámetro lower.tail = FALSE.

prob <- phyper(q = 0, m = m, n = n, k = k, lower.tail = FALSE)
paste ("La probabilidad de que apruebe es de: ", prob, " o sea ", round(prob*100, 4), "%")
## [1] "La probabilidad de que apruebe es de:  0.878787878787879  o sea  87.8788 %"

4 Referencias Bibliográficas

Anderson, David R., Dennis J. Sweeney, and Thomas A. Williams. 2008. Estadística Para Administración y Economía. 10th ed. Australia • Brasil • Corea • España • Estados Unidos • Japón • México • Reino Unido • Singapur: Cengage Learning,. Camacho Avila, Marcela. 2019. “Probabilidad y Estadística. Modelos Probabilísticos.” 2019. http://148.215.1.182/bitstream/handle/20.500.11799/108238/secme-34236_1.pdf?sequence=1. Cañas, Juan Jesús. n.d. “Distribución Hipergeométrica.” https://proyectodescartes.org/iCartesiLibri/materiales_didacticos/EstadisticaProbabilidadInferencia/VAdiscreta/4_1DistribucionHipergeometrica/index.html. Walpole, Ronald E., Raymond H. Myers, and Sharon L. Myers. 2012b. Probabilidad y Estadística Para Ingeniería y Ciencias. Novena Edición. México: Pearson. ———. 2012a. Probabilidad y Estadística Para Ingeniería y Ciencias. Novena Edición. México: Pearson.