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

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−−√ \]

ejemplo 1 de caninas:

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

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

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:

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

4.2 Cargar funciones

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

# o

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

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

bueno aqui muestra la probabilidad de encontar 3 defectuosos de 10 el valor de la varianza es de 4.2 y la desviacion standard es de 2.0494

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.