Carga de librerias
library(gtools) # Permutaciones
## Warning: package 'gtools' was built under R version 3.6.3
library(knitr) # Para kable() para que se vea mas amigable
## Warning: package 'knitr' was built under R version 3.6.3
Simular el lanzamiento de los dados
dados <- data.frame(permutations(6, 2, repeats.allowed = TRUE))
dados
## X1 X2
## 1 1 1
## 2 1 2
## 3 1 3
## 4 1 4
## 5 1 5
## 6 1 6
## 7 2 1
## 8 2 2
## 9 2 3
## 10 2 4
## 11 2 5
## 12 2 6
## 13 3 1
## 14 3 2
## 15 3 3
## 16 3 4
## 17 3 5
## 18 3 6
## 19 4 1
## 20 4 2
## 21 4 3
## 22 4 4
## 23 4 5
## 24 4 6
## 25 5 1
## 26 5 2
## 27 5 3
## 28 5 4
## 29 5 5
## 30 5 6
## 31 6 1
## 32 6 2
## 33 6 3
## 34 6 4
## 35 6 5
## 36 6 6
Encontrar las sumas y freecuencias
sumar.dados <- apply(dados, MARGIN = 1, FUN = sum)
sumar.dados
## [1] 2 3 4 5 6 7 3 4 5 6 7 8 4 5 6 7 8 9 5 6 7 8 9 10 6
## [26] 7 8 9 10 11 7 8 9 10 11 12
frecuencia_sumas <- as.data.frame((table(sumar.dados)))
class(frecuencia_sumas)
## [1] "data.frame"
colnames(frecuencia_sumas)
## [1] "sumar.dados" "Freq"
frecuencia_sumas$sumar.dados
## [1] 2 3 4 5 6 7 8 9 10 11 12
## Levels: 2 3 4 5 6 7 8 9 10 11 12
frecuencia_sumas$Freq
## [1] 1 2 3 4 5 6 5 4 3 2 1
x <- as.numeric(as.vector(frecuencia_sumas$sumar.dados))
# Variable aleatoria desde 2 hasta 12 numérica
x
## [1] 2 3 4 5 6 7 8 9 10 11 12
frecuencia <-as.numeric(as.vector(frecuencia_sumas$Freq))
frecuencia # Ya como valor numérico
## [1] 1 2 3 4 5 6 5 4 3 2 1
n <- sum(frecuencia)
n
## [1] 36
2. Determinar valor esperado ∑xp(x)
v.e <- sum(x * prob.x)
v.e
## [1] 7
3. Determinar la probabilidad acumulada F(X) de p(x)
prob.acum.x <- c(sum(prob.x[1]), sum(prob.x[1:2]), sum(prob.x[1:3]), sum(prob.x[1:4]), sum(prob.x[1:5]),
sum(prob.x[1:6]), sum(prob.x[1:7]),
sum(prob.x[1:8]), sum(prob.x[1:9]),
sum(prob.x[1:10]), sum(prob.x[1:11]))
prob.acum.x
## [1] 0.02777778 0.08333333 0.16666667 0.27777778 0.41666667 0.58333333
## [7] 0.72222222 0.83333333 0.91666667 0.97222222 1.00000000
4. Determinar y visualizar la tabla de distribución de probabilidad con columnas de
tabla <- data.frame(1:11, x, frecuencia, prob.x, prob.acum.x, x * prob.x, (x - v.e) ^ 2, (x - v.e) ^ 2 * prob.x)
colnames(tabla) <- c("pos","x", "frec","prob.x", "prob.acum.x", "x.prob.x", "x-v.e^2", "x-v.e^2prob.x")
kable(tabla)
1 |
2 |
1 |
0.0277778 |
0.0277778 |
0.0555556 |
25 |
0.6944444 |
2 |
3 |
2 |
0.0555556 |
0.0833333 |
0.1666667 |
16 |
0.8888889 |
3 |
4 |
3 |
0.0833333 |
0.1666667 |
0.3333333 |
9 |
0.7500000 |
4 |
5 |
4 |
0.1111111 |
0.2777778 |
0.5555556 |
4 |
0.4444444 |
5 |
6 |
5 |
0.1388889 |
0.4166667 |
0.8333333 |
1 |
0.1388889 |
6 |
7 |
6 |
0.1666667 |
0.5833333 |
1.1666667 |
0 |
0.0000000 |
7 |
8 |
5 |
0.1388889 |
0.7222222 |
1.1111111 |
1 |
0.1388889 |
8 |
9 |
4 |
0.1111111 |
0.8333333 |
1.0000000 |
4 |
0.4444444 |
9 |
10 |
3 |
0.0833333 |
0.9166667 |
0.8333333 |
9 |
0.7500000 |
10 |
11 |
2 |
0.0555556 |
0.9722222 |
0.6111111 |
16 |
0.8888889 |
11 |
12 |
1 |
0.0277778 |
1.0000000 |
0.3333333 |
25 |
0.6944444 |