Determinar distribución de la probabilidad para variables aleatorias discertas, generar tabla de distribución y visualizar gráficas de barra y acumulada, determinar estadísticos: media, variaza y desviación así como realizar cálculos de probabilidad.
Una compañía tiene SIETE solicitantes para DOS puestos de trabajo: TRES mujeres y CUATRO hombres. Suponga que los SIETE solicitantes son igualmente calificados y que no hay preferencia para elegir su género. Sea x igual al número de mujeres elegidas para ocupar los dos puestos de trabajo. Encuentre las probabilidades para elegir 0 mujeres, 1 mujer o 2 mujeres. (Mendenhall, Beaver, & Beaver, 2010)
Cálculo de probabilidades
library(gtools) # Para combinations() y permutations()
library(knitr) # Para kable()
#personas <- c("H1", "H2", "H3", "H4", "M1", "M2", "M3")
#personas <- c("H1", "H2", "H3","M1", "M2")
personas <- c("H", "H", "H", "H", "M", "M", "M")
personas
## [1] "H" "H" "H" "H" "M" "M" "M"
#posibles.elecciones <- combinations(5,2, personas)
posibles.elecciones <- data.frame(combinations(7,2, personas, set = FALSE))
posibles.elecciones
## X1 X2
## 1 H H
## 2 H H
## 3 H H
## 4 H M
## 5 H M
## 6 H M
## 7 H H
## 8 H H
## 9 H M
## 10 H M
## 11 H M
## 12 H H
## 13 H M
## 14 H M
## 15 H M
## 16 H M
## 17 H M
## 18 H M
## 19 M M
## 20 M M
## 21 M M
n <- nrow(posibles.elecciones)
tabla.cruzada <- table(posibles.elecciones)
tabla.cruzada
## X2
## X1 H M
## H 6 12
## M 0 3
print("La dimensión de la tabla cruzada es: ")
## [1] "La dimensión de la tabla cruzada es: "
dim(tabla.cruzada)
## [1] 2 2
cero <- tabla.cruzada[1,1]
cero
## [1] 6
una <- tabla.cruzada[1,2]
una
## [1] 12
dos <- tabla.cruzada[2,2]
dos
## [1] 3
x <- c(0,1,2)
prob.x <- c(cero/n , una/n, dos/n)
#prob.x <- c(0.3, 0.6, 0.1)
prob.x
## [1] 0.2857143 0.5714286 0.1428571
v.e <- sum(x * prob.x)
v.e
## [1] 0.8571429
prob.acum.x <- c(sum(prob.x[1]), sum(prob.x[1:2]), sum(prob.x[1:3]))
prob.acum.x
## [1] 0.2857143 0.8571429 1.0000000
x | p(x) | F(x) | xp(x) | (x−μ)2) | (x−μ)2p(x) |
---|
tabla <- data.frame(x, prob.x, prob.acum.x, x * prob.x, (x - v.e) ^ 2, (x - v.e) ^ 2 * prob.x)
colnames(tabla) <- c("x", "prob.x", "prob.acum.x", "x.prob.x", "x-v.e^2", "x-v.e^2prob.x")
kable(tabla)
x | prob.x | prob.acum.x | x.prob.x | x-v.e^2 | x-v.e^2prob.x |
---|---|---|---|---|---|
0 | 0.2857143 | 0.2857143 | 0.0000000 | 0.7346939 | 0.2099125 |
1 | 0.5714286 | 0.8571429 | 0.5714286 | 0.0204082 | 0.0116618 |
2 | 0.1428571 | 1.0000000 | 0.2857143 | 1.3061224 | 0.1865889 |
barplot(height = prob.x, names.arg = x)
plot(x,prob.acum.x, type = 'l')
var <- sum((x - v.e) ^ 2 * prob.x)
var
## [1] 0.4081633
desv.std <- sqrt(var)
desv.std
## [1] 0.6388766
x | p(x) | F(x) | xp(x) | (x−μ)2) | (x−μ)2p(x) |
---|
kable(tabla)
x | prob.x | prob.acum.x | x.prob.x | x-v.e^2 | x-v.e^2prob.x |
---|---|---|---|---|---|
0 | 0.2857143 | 0.2857143 | 0.0000000 | 0.7346939 | 0.2099125 |
1 | 0.5714286 | 0.8571429 | 0.5714286 | 0.0204082 | 0.0116618 |
2 | 0.1428571 | 1.0000000 | 0.2857143 | 1.3061224 | 0.1865889 |
De la tabla seleccionar los valores para cuando p(x) sea 0 y 1 y sumarlos o seleccionar de la probabilidad acumulada la F(1) p(x≤1)=∑p(x=0),p(x=1)=F(x=1)
La probabilidad de x sea ≤1 es igual a la suma de las probabilidades de p(0)+p(1) o lo que es lo mismo es la probabildia acumulada de F(1)
tabla$prob.acum.x[1+1] # Es que el vector en R empieza en 1 y no en cero como la variable aleatoria
## [1] 0.8571429
De la tabla seleccionar los valores para cuando p(x) sea menor 1 o seleccionar de la probabilidad acumulada la F(0) p(x<1)=p(x≤0)=F(x=0)
La probabilidad de x sea ≤1 es igual a la probabilidad de que sea menor o igual que p(x≤0 o lo que es lo mismo es la probabilidad acumulada de F(0)
tabla$prob.acum.x[0+1] # Es que el vector en R empieza en 1 y no en cero como la variable aleatoria
## [1] 0.2857143
1 - tabla$prob.acum.x[1+1] # Es que el vector en R empieza en 1 y no en cero como la variable aleatoria
## [1] 0.1428571
CERO ó 0