Cálculo de probabilidades
library(gtools)
library(knitr)
dados <- data.frame(permutations(6, 3, repeats.allowed = TRUE))
dados
## X1 X2 X3
## 1 1 1 1
## 2 1 1 2
## 3 1 1 3
## 4 1 1 4
## 5 1 1 5
## 6 1 1 6
## 7 1 2 1
## 8 1 2 2
## 9 1 2 3
## 10 1 2 4
## 11 1 2 5
## 12 1 2 6
## 13 1 3 1
## 14 1 3 2
## 15 1 3 3
## 16 1 3 4
## 17 1 3 5
## 18 1 3 6
## 19 1 4 1
## 20 1 4 2
## 21 1 4 3
## 22 1 4 4
## 23 1 4 5
## 24 1 4 6
## 25 1 5 1
## 26 1 5 2
## 27 1 5 3
## 28 1 5 4
## 29 1 5 5
## 30 1 5 6
## 31 1 6 1
## 32 1 6 2
## 33 1 6 3
## 34 1 6 4
## 35 1 6 5
## 36 1 6 6
## 37 2 1 1
## 38 2 1 2
## 39 2 1 3
## 40 2 1 4
## 41 2 1 5
## 42 2 1 6
## 43 2 2 1
## 44 2 2 2
## 45 2 2 3
## 46 2 2 4
## 47 2 2 5
## 48 2 2 6
## 49 2 3 1
## 50 2 3 2
## 51 2 3 3
## 52 2 3 4
## 53 2 3 5
## 54 2 3 6
## 55 2 4 1
## 56 2 4 2
## 57 2 4 3
## 58 2 4 4
## 59 2 4 5
## 60 2 4 6
## 61 2 5 1
## 62 2 5 2
## 63 2 5 3
## 64 2 5 4
## 65 2 5 5
## 66 2 5 6
## 67 2 6 1
## 68 2 6 2
## 69 2 6 3
## 70 2 6 4
## 71 2 6 5
## 72 2 6 6
## 73 3 1 1
## 74 3 1 2
## 75 3 1 3
## 76 3 1 4
## 77 3 1 5
## 78 3 1 6
## 79 3 2 1
## 80 3 2 2
## 81 3 2 3
## 82 3 2 4
## 83 3 2 5
## 84 3 2 6
## 85 3 3 1
## 86 3 3 2
## 87 3 3 3
## 88 3 3 4
## 89 3 3 5
## 90 3 3 6
## 91 3 4 1
## 92 3 4 2
## 93 3 4 3
## 94 3 4 4
## 95 3 4 5
## 96 3 4 6
## 97 3 5 1
## 98 3 5 2
## 99 3 5 3
## 100 3 5 4
## 101 3 5 5
## 102 3 5 6
## 103 3 6 1
## 104 3 6 2
## 105 3 6 3
## 106 3 6 4
## 107 3 6 5
## 108 3 6 6
## 109 4 1 1
## 110 4 1 2
## 111 4 1 3
## 112 4 1 4
## 113 4 1 5
## 114 4 1 6
## 115 4 2 1
## 116 4 2 2
## 117 4 2 3
## 118 4 2 4
## 119 4 2 5
## 120 4 2 6
## 121 4 3 1
## 122 4 3 2
## 123 4 3 3
## 124 4 3 4
## 125 4 3 5
## 126 4 3 6
## 127 4 4 1
## 128 4 4 2
## 129 4 4 3
## 130 4 4 4
## 131 4 4 5
## 132 4 4 6
## 133 4 5 1
## 134 4 5 2
## 135 4 5 3
## 136 4 5 4
## 137 4 5 5
## 138 4 5 6
## 139 4 6 1
## 140 4 6 2
## 141 4 6 3
## 142 4 6 4
## 143 4 6 5
## 144 4 6 6
## 145 5 1 1
## 146 5 1 2
## 147 5 1 3
## 148 5 1 4
## 149 5 1 5
## 150 5 1 6
## 151 5 2 1
## 152 5 2 2
## 153 5 2 3
## 154 5 2 4
## 155 5 2 5
## 156 5 2 6
## 157 5 3 1
## 158 5 3 2
## 159 5 3 3
## 160 5 3 4
## 161 5 3 5
## 162 5 3 6
## 163 5 4 1
## 164 5 4 2
## 165 5 4 3
## 166 5 4 4
## 167 5 4 5
## 168 5 4 6
## 169 5 5 1
## 170 5 5 2
## 171 5 5 3
## 172 5 5 4
## 173 5 5 5
## 174 5 5 6
## 175 5 6 1
## 176 5 6 2
## 177 5 6 3
## 178 5 6 4
## 179 5 6 5
## 180 5 6 6
## 181 6 1 1
## 182 6 1 2
## 183 6 1 3
## 184 6 1 4
## 185 6 1 5
## 186 6 1 6
## 187 6 2 1
## 188 6 2 2
## 189 6 2 3
## 190 6 2 4
## 191 6 2 5
## 192 6 2 6
## 193 6 3 1
## 194 6 3 2
## 195 6 3 3
## 196 6 3 4
## 197 6 3 5
## 198 6 3 6
## 199 6 4 1
## 200 6 4 2
## 201 6 4 3
## 202 6 4 4
## 203 6 4 5
## 204 6 4 6
## 205 6 5 1
## 206 6 5 2
## 207 6 5 3
## 208 6 5 4
## 209 6 5 5
## 210 6 5 6
## 211 6 6 1
## 212 6 6 2
## 213 6 6 3
## 214 6 6 4
## 215 6 6 5
## 216 6 6 6
sumar.dados <- apply(dados, MARGIN = 1, FUN = sum)
sumar.dados
## [1] 3 4 5 6 7 8 4 5 6 7 8 9 5 6 7 8 9 10 6 7 8 9 10 11 7
## [26] 8 9 10 11 12 8 9 10 11 12 13 4 5 6 7 8 9 5 6 7 8 9 10 6 7
## [51] 8 9 10 11 7 8 9 10 11 12 8 9 10 11 12 13 9 10 11 12 13 14 5 6 7
## [76] 8 9 10 6 7 8 9 10 11 7 8 9 10 11 12 8 9 10 11 12 13 9 10 11 12
## [101] 13 14 10 11 12 13 14 15 6 7 8 9 10 11 7 8 9 10 11 12 8 9 10 11 12
## [126] 13 9 10 11 12 13 14 10 11 12 13 14 15 11 12 13 14 15 16 7 8 9 10 11 12
## [151] 8 9 10 11 12 13 9 10 11 12 13 14 10 11 12 13 14 15 11 12 13 14 15 16 12
## [176] 13 14 15 16 17 8 9 10 11 12 13 9 10 11 12 13 14 10 11 12 13 14 15 11 12
## [201] 13 14 15 16 12 13 14 15 16 17 13 14 15 16 17 18
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] 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
## Levels: 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
frecuencia_sumas$Freq
## [1] 1 3 6 10 15 21 25 27 27 25 21 15 10 6 3 1
x <- as.numeric(as.vector(frecuencia_sumas$sumar.dados))
x
## [1] 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
frecuencia <-as.numeric(as.vector(frecuencia_sumas$Freq))
frecuencia
## [1] 1 3 6 10 15 21 25 27 27 25 21 15 10 6 3 1
n <- sum(frecuencia)
n
## [1] 216
x
## [1] 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
prob.x <- frecuencia / n
prob.x
## [1] 0.00462963 0.01388889 0.02777778 0.04629630 0.06944444 0.09722222
## [7] 0.11574074 0.12500000 0.12500000 0.11574074 0.09722222 0.06944444
## [13] 0.04629630 0.02777778 0.01388889 0.00462963
sum(prob.x)
## [1] 1
v.e <- sum(x * prob.x)
v.e
## [1] 10.5
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]),
sum(prob.x[1:12]), sum(prob.x[1:13]),
sum(prob.x[1:14]), sum(prob.x[1:15]),
sum(prob.x[1:16]))
prob.acum.x
## [1] 0.00462963 0.01851852 0.04629630 0.09259259 0.16203704 0.25925926
## [7] 0.37500000 0.50000000 0.62500000 0.74074074 0.83796296 0.90740741
## [13] 0.95370370 0.98148148 0.99537037 1.00000000
tabla <- data.frame(1:16, 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)
| pos | x | frec | prob.x | prob.acum.x | x.prob.x | x-v.e^2 | x-v.e^2prob.x |
|---|---|---|---|---|---|---|---|
| 1 | 3 | 1 | 0.0046296 | 0.0046296 | 0.0138889 | 56.25 | 0.2604167 |
| 2 | 4 | 3 | 0.0138889 | 0.0185185 | 0.0555556 | 42.25 | 0.5868056 |
| 3 | 5 | 6 | 0.0277778 | 0.0462963 | 0.1388889 | 30.25 | 0.8402778 |
| 4 | 6 | 10 | 0.0462963 | 0.0925926 | 0.2777778 | 20.25 | 0.9375000 |
| 5 | 7 | 15 | 0.0694444 | 0.1620370 | 0.4861111 | 12.25 | 0.8506944 |
| 6 | 8 | 21 | 0.0972222 | 0.2592593 | 0.7777778 | 6.25 | 0.6076389 |
| 7 | 9 | 25 | 0.1157407 | 0.3750000 | 1.0416667 | 2.25 | 0.2604167 |
| 8 | 10 | 27 | 0.1250000 | 0.5000000 | 1.2500000 | 0.25 | 0.0312500 |
| 9 | 11 | 27 | 0.1250000 | 0.6250000 | 1.3750000 | 0.25 | 0.0312500 |
| 10 | 12 | 25 | 0.1157407 | 0.7407407 | 1.3888889 | 2.25 | 0.2604167 |
| 11 | 13 | 21 | 0.0972222 | 0.8379630 | 1.2638889 | 6.25 | 0.6076389 |
| 12 | 14 | 15 | 0.0694444 | 0.9074074 | 0.9722222 | 12.25 | 0.8506944 |
| 13 | 15 | 10 | 0.0462963 | 0.9537037 | 0.6944444 | 20.25 | 0.9375000 |
| 14 | 16 | 6 | 0.0277778 | 0.9814815 | 0.4444444 | 30.25 | 0.8402778 |
| 15 | 17 | 3 | 0.0138889 | 0.9953704 | 0.2361111 | 42.25 | 0.5868056 |
| 16 | 18 | 1 | 0.0046296 | 1.0000000 | 0.0833333 | 56.25 | 0.2604167 |
barplot(height = prob.x, names.arg = x)
plot(x,prob.acum.x, type = 'b')
var <- sum((x - v.e) ^ 2 * prob.x)
var
## [1] 8.75
desv.std <- sqrt(var)
desv.std
## [1] 2.95804
Cálculo de probabilidades
i=1
i=min(tabla$x) - tabla$pos[1]
i
## [1] 2
tabla$prob.acum.x[6-i]
## [1] 0.09259259
1 - tabla$prob.acum.x[9-i]
## [1] 0.625
(tabla$prob.acum.x[10-i] - tabla$prob.acum[4-i])
## [1] 0.4814815
1 - tabla$prob.acum.x[11-i]
## [1] 0.375