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 Fundamento teórico

La distribución de probabilidad hipergeométrica está estrechamente relacionada con la distribución binomial. Pero difieren en dos puntos: en la distribución hipergeométrica, los ensayos no son independientes y la probabilidad de éxito varía de ensayo a ensayo (anderson2008?).

La distribución de probabilidad de la variable aleatoria hipergeométrica x, el número de éxitos en una muestra aleatoria de tamaño n que se selecciona de N artículos, en los que k se denomina éxito y N–k

se le llama fracaso (Camacho Avila 2019).

La distribución hipergeométrica es especialmente útil en todos aquellos casos en los que se extraigan muestras o se realicen experiencias repetidas sin devolución del elemento extraído o sin retornar a la situación experimental inicial.

Es una distribución fundamental en el estudio de muestras pequeñas de poblaciones pequeñas y en el cálculo de probabilidades de juegos de azar. Tiene grandes aplicaciones en el control de calidad para procesos experimentales en los que no es posible retornar a la situación de partida. (Cañas, n.d.).

Como en el caso de la distribución binomial, la distribución hipergeométrica se aplica en el muestreo de aceptación, donde se toman muestras del material o las partes de los lotes con el fi n de determinar si se acepta o no el lote completo (Walpole, Myers, and Myers 2012a).

librerias

library(knitr)
library(gtools)

3.1 Fórmula de función de probabilidad

La fórmula de la distribución hipergeométrica

f(x)=(rx)⋅(N−rn−x)(Nn)

Dónde:

f(x) es la probabildiad de x

o la función de distribución n número de ensayos o longitud de la muestra casos exitosos N número de elementos de la población r o k número de elementos de la población que se extraen de la población x Valor de la variable aleatoria discreta 0,1,2,3,,,,n

(Anderson, Sweeney, and Williams 2008).

(rx) Parte izquierda del numerador, representan el número de formas (combinaciones) en que se toman x éxitos de un total de r

éxitos que hay en la población,

(N−rn−x) parte derecha del numerador representa el número de maneras en que se puede tomar n−x fracasos de un total de N−r

elementos que hay en la población.

(Nn) como denominador representan el número de maneras (cantidad de combinaciones) en que es posible tomar una muestra de tamaño n de una población de tamaño N

; (Anderson, Sweeney, and Williams 2008).

Recordando la fórmula para determinar el número de combinaciones en grupos de n elementos de una población total de N está dada por: CNn=(Nn)=N!n!⋅(N−n)!

Entonces desarrollando la fórmula con las combinaciones la función de probabilidad hipergeométrica queda de la siguiente manera:

(x)=(rx)⋅(N−rn−x)(Nn)=(r!x!⋅(r−x)!)⋅((N−r)!(n−x)!⋅((N−r)−(n−x))!)N!n!⋅(N−n)!

3.2 Fórmula para valor esperado

E(x)=μ=n⋅(rN)

3.3 Fórmula para varianza

Var(x)=σ2=n⋅(rN)⋅(1−rN)⋅(N−nN−1)

3.4 Fórmula de la desviación estándar

σ=Var(x)−−−−−−√=σ2−−√

Ejemplo1: canicas:

include_graphics("D:/Users/Usuario/Documents/practicas y casos r/imagenes/canicas.jpg")

N=15

Total de canicas o bolitas

n=m=9

Canicas rojas

k=r=5 Cantidad que se extrae 5

x=3

Variable aleatoria

En alguna literatura de la fórmula de hipergeométrica la variable m es igual a la literal n y r es lo mismo que la literal k

.

(x)=(rx)⋅(N−rn−x)(Nn)=(r!x!⋅(r−x)!)⋅((N−r)!(n−x)!⋅((N−r)−(n−x))!)N!n!⋅(N−n)!

Entonces, sustituyendo valores de literales:

P(x=3)=(93)⋅(15−95−3)(155)=(9!3!⋅(9−3)!)⋅((15−9)!(5−3)!⋅((15−9)−(5−3))!)15!5!⋅(15−5)!=84×153003=0.4195

N <- 15
m <- 9 # Canicas rojas
n <- (N-m) # Canicas negras
k <- 5 # Extracción de canicas
x <- 3

# Haciendo operaciones sería
numerador <- factorial(m) / (factorial(x) * (factorial(m-x))) * factorial(N-m) / (factorial(k-x) * (factorial((N-m)-(k-x))))

denominador<- factorial(N) / (factorial(k) * factorial(N-5))

prob <- numerador / denominador
prob
## [1] 0.4195804

Directamente con la función dhyper()

prob <- dhyper(x=x, m = m, n = n, k = k)
prob
## [1] 0.4195804

Ejemplo2: Suponga la extracción aleatoria de 8 elementos de un conjunto formado por 40 elementos totales (cartas baraja española) de los cuales 10 son del tipo A (salir oro) y 30 son del tipo complementario (no salir oro).

include_graphics("D:/Users/Usuario/Documents/practicas y casos r/imagenes/baraja.jpg")

Si se realizan las extracciones sin devolver los elementos extraídos y se identifica a x al número de elementos del tipo A (oros obtenidos) que se extraen en las 8 cartas; x

seguirá una distribución hipergeométrica de parámetros

N=40
  • Total de barajas

m=n=10 - Cantidad de oros 10

k=8 - Cuantas cartas se extraen 8

Para calcular la probabilidad de obtener 4

oros:

x=4
include_graphics("D:/Users/Usuario/Documents/practicas y casos r/imagenes/ope.jpg")

Calculando con la función dhyper()

N <- 40 # Total de casos
m <- n <- 8  # Cantidad de oros
k <- r <- 10 # Cantidad de extracción
x <- 4  # Variable aleatoria


dhyper(x = x, m = m, n = (N-m), k = k)
## [1] 0.07483354

Ejemplo 3:

include_graphics("D:/Users/Usuario/Documents/practicas y casos r/imagenes/texto.jpg")

Solución con dhyper()

N <- 40 # Tamaño de lote
m <- 3  # Casos de Exito
k <- 5  # Extracción
x <- 1  # Variable aleatoria

dhyper(x = x, m = m, n = (N - m), k = k)
## [1] 0.3011134

4 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.

4.1 Cargar librerías

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.5
## 
## 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.5
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 object is masked from 'package:gtools':
## 
##     logit
## 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

4.2 Cargar funciones

source("https://raw.githubusercontent.com/rpizarrog/probabilidad-y-estad-stica/master/funciones/funciones.distribuciones.r")

4.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

Número de casos exitosos

N=12

Total de elementos

r=3

Extracción de la muestra

x es la cantidad de fusible defectuosos como variable aleatoria discreta, desde 0 hasta n

o hasta un valor específico(Anderson, Sweeney, and Williams 2008).

4.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

4.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)

4.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 %"

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 %"

4.3.4 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"

4.3.5 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"

4.3.6 Interpretación

Existe una probabilidad de aproximadamente 47.72% de que suceda exactamente un fusible defectuoso.

Existe una probabilidad aproximada del 95% de que sucedan 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 que tanto se alejan del valor medio en la distribución de probabilidad en este caso hipergeométrica.

4.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

4.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

4.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)

4.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 %"
4.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"
4.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"
4.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"

4.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).

4.5 Artículos defectuosos

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

4.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
4.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)

4.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"

4.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"

4.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"

4.5.6 Interpretación

Pues bueno este ejercicio en particular se me hace muy interesante ya que estamos hablando de productos que pueden estar defectuosos y gracias a la probabilidad y a las diferentes funciones es que logramos saber las probabilidades de que un articulo que se encuentra con varios mas este defectuoso y se tenga que cambiar o devolver, si sabemos usar estas funciones sera mucho mas facil complementar nuestra informacion ya obtenida.

4.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?).

4.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

4.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)

4.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 %"

4.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 %"

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.