## [1] "LC_COLLATE=es_ES.UTF-8;LC_CTYPE=es_ES.UTF-8;LC_MONETARY=es_ES.UTF-8;LC_NUMERIC=C;LC_TIME=es_ES.UTF-8"
# Supongamos que lanzamos una moneda 5 veces y que X es la v.a. que representa el número de caras (0, 1, 2, 3, 4 y 5).
Datos obtenidos del enunciado: La variable aleatoria x (número de caras) sigue una distribución binomial x = B(n,p) 1 - El experimento esta compuesto por un número fijo de pruebas idénticas (lanzar la moneda 5 veces) 2 - El resultado de cada prueba puede clasificarse como éxito (cara = p) o fracaso (cruz = 1 - p) 3 - Cada prueba es independiente, el resultado que haya salido en un lanzamiento no tiene ningún efecto en el resultado del siguiente lanzamiento 4 - La variable de interés (número de caras que se logran) es el número de éxitos en las n pruebas a realizar
Habiendo sacado la información del enunciado, sabemos que la variable aleatoria x (número de caras) sigue la distribución binomial x = B(5, 0.5)
1 - Espacio muestral completo
El espacio muestral es el conjunto formado por todos los posibles resultados de un experimento aleatorio Cada resultado se denomina suceso elemental, mientras que un subconjunto cualquiera del espacio se llama suceso
En este caso, se lanza una moneda 5 veces, podemos obtener cara o cruz en cada lanzamiento
# spannd.grid genera las posibles combinaciones
espacio_muestral = expand.grid(c("cara","cruz"),
c("cara","cruz"),
c("cara","cruz"),
c("cara","cruz"),
c("cara","cruz"))
names(espacio_muestral)[1] = "lanzamiento_1"
names(espacio_muestral)[2] = "lanzamiento_2"
names(espacio_muestral)[3] = "lanzamiento_3"
names(espacio_muestral)[4] = "lanzamiento_4"
names(espacio_muestral)[5] = "lanzamiento_5"
formato = c("striped", "bordered", "hover", "responsive")
espacio_muestral %>% kable() %>% kable_styling(bootstrap_options = formato,
full_width = FALSE,
position = "center",
font_size = 16) %>%
row_spec(0, bold = TRUE, color="darkcyan", align = "center", background = "lightgrey") %>%
row_spec(1:nrow(espacio_muestral), bold = TRUE, color="black", align = "center")
lanzamiento_1 | lanzamiento_2 | lanzamiento_3 | lanzamiento_4 | lanzamiento_5 |
---|---|---|---|---|
cara | cara | cara | cara | cara |
cruz | cara | cara | cara | cara |
cara | cruz | cara | cara | cara |
cruz | cruz | cara | cara | cara |
cara | cara | cruz | cara | cara |
cruz | cara | cruz | cara | cara |
cara | cruz | cruz | cara | cara |
cruz | cruz | cruz | cara | cara |
cara | cara | cara | cruz | cara |
cruz | cara | cara | cruz | cara |
cara | cruz | cara | cruz | cara |
cruz | cruz | cara | cruz | cara |
cara | cara | cruz | cruz | cara |
cruz | cara | cruz | cruz | cara |
cara | cruz | cruz | cruz | cara |
cruz | cruz | cruz | cruz | cara |
cara | cara | cara | cara | cruz |
cruz | cara | cara | cara | cruz |
cara | cruz | cara | cara | cruz |
cruz | cruz | cara | cara | cruz |
cara | cara | cruz | cara | cruz |
cruz | cara | cruz | cara | cruz |
cara | cruz | cruz | cara | cruz |
cruz | cruz | cruz | cara | cruz |
cara | cara | cara | cruz | cruz |
cruz | cara | cara | cruz | cruz |
cara | cruz | cara | cruz | cruz |
cruz | cruz | cara | cruz | cruz |
cara | cara | cruz | cruz | cruz |
cruz | cara | cruz | cruz | cruz |
cara | cruz | cruz | cruz | cruz |
cruz | cruz | cruz | cruz | cruz |
## [1] "data.frame"
Respuesta: Al haber obtenido el dataframe, obtenemos que el espacio muestral completo seria el conjunto de todos los casos obtenidos haber lanzado una moneda 5 veces, como se puede observar en el dataframe llamado espacio_muestral
2 - Número de elementos del espacio muestral completo
## [1] 32 5
## [1] 32
## [1] 5
Respuesta: EI número de combinaciones es 32 por lo que el número de elementos del espacio muestral muestral equivale a 32 combinaciones posibles en 5 lanzamientos.
3 - Número de elementos del espacio muestral
Sacar 3 caras y del espacio muestral
Sacar 4 caras
# Creacion de una coumna nueva
espacio_muestral$total_caras = rowSums(espacio_muestral == "cara")
formato = c("striped", "bordered", "hover", "responsive")
espacio_muestral %>% kable() %>% kable_styling(bootstrap_options = formato,
full_width = FALSE,
position = "center",
font_size = 16) %>%
row_spec(0, bold = TRUE, color="darkcyan", align = "center", background = "lightgrey") %>%
row_spec(1:nrow(espacio_muestral), bold = TRUE, color="black", align = "center")
lanzamiento_1 | lanzamiento_2 | lanzamiento_3 | lanzamiento_4 | lanzamiento_5 | total_caras |
---|---|---|---|---|---|
cara | cara | cara | cara | cara | 5 |
cruz | cara | cara | cara | cara | 4 |
cara | cruz | cara | cara | cara | 4 |
cruz | cruz | cara | cara | cara | 3 |
cara | cara | cruz | cara | cara | 4 |
cruz | cara | cruz | cara | cara | 3 |
cara | cruz | cruz | cara | cara | 3 |
cruz | cruz | cruz | cara | cara | 2 |
cara | cara | cara | cruz | cara | 4 |
cruz | cara | cara | cruz | cara | 3 |
cara | cruz | cara | cruz | cara | 3 |
cruz | cruz | cara | cruz | cara | 2 |
cara | cara | cruz | cruz | cara | 3 |
cruz | cara | cruz | cruz | cara | 2 |
cara | cruz | cruz | cruz | cara | 2 |
cruz | cruz | cruz | cruz | cara | 1 |
cara | cara | cara | cara | cruz | 4 |
cruz | cara | cara | cara | cruz | 3 |
cara | cruz | cara | cara | cruz | 3 |
cruz | cruz | cara | cara | cruz | 2 |
cara | cara | cruz | cara | cruz | 3 |
cruz | cara | cruz | cara | cruz | 2 |
cara | cruz | cruz | cara | cruz | 2 |
cruz | cruz | cruz | cara | cruz | 1 |
cara | cara | cara | cruz | cruz | 3 |
cruz | cara | cara | cruz | cruz | 2 |
cara | cruz | cara | cruz | cruz | 2 |
cruz | cruz | cara | cruz | cruz | 1 |
cara | cara | cruz | cruz | cruz | 2 |
cruz | cara | cruz | cruz | cruz | 1 |
cara | cruz | cruz | cruz | cruz | 1 |
cruz | cruz | cruz | cruz | cruz | 0 |
tabla = table(espacio_muestral$total_caras)
df = as.data.frame(tabla)
names(df)[1] = "num_caras"
names(df)[2] = "num_elementos"
formato = c("striped", "bordered", "hover", "responsive")
df %>% kable() %>% kable_styling(bootstrap_options = formato,
full_width = FALSE,
position = "center",
font_size = 16) %>%
row_spec(0, bold = TRUE, color="darkcyan", align = "center", background = "lightgrey") %>%
row_spec(1:nrow(df), bold = TRUE, color="black", align = "center")
num_caras | num_elementos |
---|---|
0 | 1 |
1 | 5 |
2 | 10 |
3 | 10 |
4 | 5 |
5 | 1 |
## [1] 10
## [1] 5
Respuesta: Número de elementos del espacio muestral sacar 3 caras: 10 Número de elementos del espacio muestral sacar 4 caras: 5
4 - Función de probabilidad: Probabilidad de que salga 0 caras, 1 cara, 2 caras, 3 caras, 4 caras y 5 caras
## [1] 0.03125
## [1] 0.03125
## [1] 0.15625
## [1] 0.3125
## [1] 0.3125
## [1] 0.15625
## [1] 0.03125
## [1] 0.03125 0.15625 0.31250 0.31250 0.15625 0.03125
df_bin = data.frame(numero_caras = x, Funcion_probabilidad = f.prob.x)
formato = c("striped", "bordered", "hover", "responsive")
df_bin %>% kable() %>% kable_styling(bootstrap_options = formato,
full_width = FALSE,
position = "center",
font_size = 16) %>%
row_spec(0, bold = TRUE, color="darkcyan", align = "center", background = "lightgrey") %>%
row_spec(1:nrow(df_bin), bold = TRUE, color="black", align = "center")
numero_caras | Funcion_probabilidad |
---|---|
0 | 0.03125 |
1 | 0.15625 |
2 | 0.31250 |
3 | 0.31250 |
4 | 0.15625 |
5 | 0.03125 |
## [1] 0.03125
## [1] 0.15625
## [1] 0.3125
## [1] 0.3125
## [1] 0.15625
## [1] 0.03125
Respuesta: La probabilidad de que salgan 0 caras es: 0.03125 La probabilidad de que salgan 1 caras es: 0.15625 La probabilidad de que salgan 2 caras es: 0.3125 La probabilidad de que salgan 3 caras es: 0.3125 La probabilidad de que salgan 4 caras es: 0.15625 La probabilidad de que salgan 5 caras es: 0.03125
5 - Realizar un gráfico de la función de probabilidad
Respuesta:
numero_caras = c(0,1,2,3,4,5)
probabilidad = round(df_bin$Funcion_probabilidad,5)
f_p <- ggplot(data = df_bin, aes(numero_caras, probabilidad)) +
geom_col(width = 0.7, fill = "darkcyan") +
labs(title = "Función Probabilidad variable x", x = "Número de veces que sale cara", y = "Probabilidad") +
theme_gray() +
geom_text(label = probabilidad, nudge_y = 0.5, chek_overlap = TRUE)
p = ggplotly(f_p)
p
f_p2 = data.frame(lanzam = 0:5,
fun_prob = dbinom (x = 0:5, size = 5, prob = 0.5)) %>%
ggplot(aes(x = factor(lanzam), y = fun_prob)) +
geom_col(width = 0.7, fill = "darkcyan") +
labs(title = "Función Probabilidad variable x", x = "Número de veces que sale cara", y = "Probabilidad") +
theme_gray() +
geom_text(label = probabilidad, nudge_y = 0.5, chek_overlap = TRUE)
p = ggplotly(f_p2)
p
6 - Función de distribución
Respuesta:
## [1] 0.03125 0.18750 0.50000 0.81250 0.96875 1.00000
m = matrix(nrow = 6,
ncol = 1,
byrow = TRUE,
dimnames = list(c("0 Caras", "1 Caras", "2 Caras", "3 Caras", "4 Caras", "5 Caras" ),
c("Funcion_distribución")))
m_df = as.data.frame(m)
m_df[1,1] = funcion_distribucion[1]
m_df[2,1] = funcion_distribucion[2]
m_df[3,1] = funcion_distribucion[3]
m_df[4,1] = funcion_distribucion[4]
m_df[5,1] = funcion_distribucion[5]
m_df[6,1] = funcion_distribucion[6]
formato = c("striped", "bordered", "hover", "responsive")
m_df %>% kable() %>% kable_styling(bootstrap_options = formato,
full_width = FALSE,
position = "center",
font_size = 16) %>%
row_spec(0, bold = TRUE, color="darkcyan", align = "center", background = "lightgrey") %>%
row_spec(1:nrow(m_df), bold = TRUE, color="black", align = "center")
Funcion_distribución | |
---|---|
0 Caras | 0.03125 |
1 Caras | 0.18750 |
2 Caras | 0.50000 |
3 Caras | 0.81250 |
4 Caras | 0.96875 |
5 Caras | 1.00000 |
## [1] 0.03125 0.18750 0.50000 0.81250 0.96875 1.00000
## [1] 0.03125 0.18750 0.50000 0.81250 0.96875 1.00000
7 - Realizar un gráfico de la función de distribución
Respuesta:
numero_caras = c(0,1,2,3,4,5)
f_p = ggplot(data = m_df, aes(numero_caras, funcion_distribucion )) +
geom_line(linetype = 1, color = "darkcyan")+
labs("Función de distribución variable x número de caras",
x = "Número de veces que sale cara",
y = "Probabilidad acumulada") +
theme_gray() +
geom_text(label = funcion_distribucion, nudge_y = 0.05, check_overlap = TRUE)
p = ggplotly(f_p)
p
8 - Probabilidad de que el número de caras sea menor o igual que 3
x = c(0:5)
n = 5
p = 0.5
tabla = data.frame(numero_caras = x,
funcion_probabilidad = dbinom(x = x, size = n, prob = p),
funcion_distribucion = cumsum(dbinom(x = x, size = n, prob = p)))
formato = c("striped", "bordered", "hover", "responsive")
tabla %>% kable() %>% kable_styling(bootstrap_options = formato,
full_width = FALSE,
position = "center",
font_size = 16) %>%
row_spec(0, bold = TRUE, color="darkcyan", align = "center", background = "lightgrey") %>%
row_spec(1:nrow(tabla), bold = TRUE, color="black", align = "center")
numero_caras | funcion_probabilidad | funcion_distribucion |
---|---|---|
0 | 0.03125 | 0.03125 |
1 | 0.15625 | 0.18750 |
2 | 0.31250 | 0.50000 |
3 | 0.31250 | 0.81250 |
4 | 0.15625 | 0.96875 |
5 | 0.03125 | 1.00000 |
## [1] 0.8125
## numero_caras funcion_probabilidad funcion_distribucion
## 1 3 0.3125 0.8125
## [1] 0.8125
text_size = 10
margin_size = text_size / 2
f_menor3 = data.frame(lanzam = 0:5,
fun_prob = dbinom(0:5, 5, 0.5),
fun_dist = pbinom(0:5, 5, 0.5, lower.tail = TRUE))
f_menor3 = f_menor3 %>%
mutate(Result = ifelse((lanzam <= 3), "Si", "No"))
f_menor3
## lanzam fun_prob fun_dist Result
## 1 0 0.03125 0.03125 Si
## 2 1 0.15625 0.18750 Si
## 3 2 0.31250 0.50000 Si
## 4 3 0.31250 0.81250 Si
## 5 4 0.15625 0.96875 No
## 6 5 0.03125 1.00000 No
p = ggplot(f_menor3, aes(x = lanzam, y = fun_dist, fill = Result)) +
geom_col(width = 0.7) +
geom_text(aes(label = round(fun_dist, 4), y = fun_dist + 0.2), size = 4, vjust = 0)+
labs(title = "Probabilidad de que un número de caras sea menor o igual a 3",
x = "Número de veces obteniendo cara",
y = "Probabilidad",
fill = "Resultado") +
theme_gray() +
theme(legend.text = element_text (size = text_size),
plot.title = element_text (size = text_size,
family = "times",
hjust = 0.5,
vjust = 1,
colour = "darkcyan",
face = "bold",
margin = margin(b = margin_size * 1.2)),
panel.background = element_rect(fill = "lightgray"),
panel.grid.major = element_line(color = "white", linewidth = 0.5),
panel.grid.minor = element_line(color = "white", linewidth = 0.25)) +
scale_fill_manual(values = c("Si" = "darkcyan", "No" = "black"))
ggplotly(p)
Respuesta: Probabilidad de que el número de caras sea menor o igual que 3 es: 0.8125 que es la probabilidad acumulada de sacar 0 caras, 1 cara, 2 caras y 3 caras
9 - Probabilidad de que el número de caras sea mayor que 2
## [1] 0.5
text_size = 10
margin_size = text_size / 2
f_mayor2 = data.frame(lanzam = 0:5,
fun_prob = dbinom(0:5, 5, 0.5),
fun_dist = pbinom(0:5, 5, 0.5, lower.tail = TRUE))
f_mayor2 = f_mayor2 %>%
mutate(Result = ifelse((lanzam > 2), "Si", "No"))
f_mayor2
## lanzam fun_prob fun_dist Result
## 1 0 0.03125 0.03125 No
## 2 1 0.15625 0.18750 No
## 3 2 0.31250 0.50000 No
## 4 3 0.31250 0.81250 Si
## 5 4 0.15625 0.96875 Si
## 6 5 0.03125 1.00000 Si
p = ggplot(f_mayor2, aes(x = lanzam, y = fun_dist, fill = Result)) +
geom_col(width = 0.7) +
geom_text(aes(label = round(fun_dist, 4), y = fun_dist + 0.2), size = 4, vjust = 0)+
labs(title = "Probabilidad de que un número de caras sea mayor a 2",
x = "Número de veces obteniendo cara",
y = "Probabilidad",
fill = "Resultado") +
theme_gray() +
theme(legend.text = element_text (size = text_size),
plot.title = element_text (size = text_size,
family = "times",
hjust = 0.5,
vjust = 1,
colour = "darkcyan",
face = "bold",
margin = margin(b = margin_size * 1.2)),
panel.background = element_rect(fill = "lightgray"),
panel.grid.major = element_line(color = "white", linewidth = 0.5),
panel.grid.minor = element_line(color = "white", linewidth = 0.25)) +
scale_fill_manual(values = c("Si" = "darkcyan", "No" = "black"))
ggplotly(p)
x_menor_5 = pbinom(5, 5, 0.5)
x_menor_2 = pbinom(2, 5, 0.5)
x_mayor_2 = x_menor_5 - x_menor_2
x_mayor_2
## [1] 0.5
Respuesta: Probabilidad de que el número de caras sea mayor a 2 es: 0.5 que es la probabilidad acumulada de sacar 3 caras, 4 caras y 5 caras usando la formula
P(X ≥ 2) = P(X ≤ 5) - P(X ≤ 2)
10 - Probabilidad de que el número de caras se encuentre entre 1 y 4 (ambos incluidos)
## [1] 0.9375
text_size = 10
margin_size = text_size / 2
f_entre_1y4 = data.frame(lanzam = 0:5,
fun_prob = dbinom(0:5, 5, 0.5),
fun_dist = pbinom(0:5, 5, 0.5, lower.tail = TRUE))
f_entre_1y4 = f_entre_1y4 %>%
mutate(Result = ifelse(lanzam >= 1 & lanzam <= 4, "Si", "No"))
f_entre_1y4
## lanzam fun_prob fun_dist Result
## 1 0 0.03125 0.03125 No
## 2 1 0.15625 0.18750 Si
## 3 2 0.31250 0.50000 Si
## 4 3 0.31250 0.81250 Si
## 5 4 0.15625 0.96875 Si
## 6 5 0.03125 1.00000 No
p = ggplot(f_entre_1y4, aes(x = lanzam, y = fun_dist, fill = Result)) +
geom_col(width = 0.7) +
geom_text(aes(label = round(fun_dist, 4), y = fun_dist + 0.2), size = 4, vjust = 0)+
labs(title = "Probabilidad de que un número de caras sea mayor a 2",
x = "Número de veces obteniendo cara",
y = "Probabilidad",
fill = "Resultado") +
theme_gray() +
theme(legend.text = element_text (size = text_size),
plot.title = element_text (size = text_size,
family = "times",
hjust = 0.5,
vjust = 1,
colour = "darkcyan",
face = "bold",
margin = margin(b = margin_size * 1.2)),
panel.background = element_rect(fill = "lightgray"),
panel.grid.major = element_line(color = "white", linewidth = 0.5),
panel.grid.minor = element_line(color = "white", linewidth = 0.25)) +
scale_fill_manual(values = c("Si" = "darkcyan", "No" = "black"))
ggplotly(p)
x_menor_0 = pbinom(0, 5, 0.5)
x_menor_4 = pbinom(4, 5, 0.5)
x_entre_1y4 = x_menor_4 - x_menor_0
x_entre_1y4
## [1] 0.9375
Respuesta: La probabilidad de que el número de caras se encuentre entre 1 y 4 (ambos incluidos) es 0.9375 que es la probabilidad acumulada de sacar 1 caras, 2 caras, 3 caras y 4 caras usando la formula
P(1 ≤ X ≤ 4) = P(X ≤ 4) - P(X ≤ 0)
11 - Probabilidad de que el número de caras se encuentre entre 1 y 4 (ambos NO incluidos)
## [1] 0.625
text_size = 10
margin_size = text_size / 2
f_entre_2y3 = data.frame(lanzam = 0:5,
fun_prob = dbinom(0:5, 5, 0.5),
fun_dist = pbinom(0:5, 5, 0.5, lower.tail = TRUE))
f_entre_2y3 = f_entre_2y3 %>%
mutate(Result = ifelse(lanzam > 1 & lanzam < 4, "Si", "No"))
f_entre_2y3
## lanzam fun_prob fun_dist Result
## 1 0 0.03125 0.03125 No
## 2 1 0.15625 0.18750 No
## 3 2 0.31250 0.50000 Si
## 4 3 0.31250 0.81250 Si
## 5 4 0.15625 0.96875 No
## 6 5 0.03125 1.00000 No
p = ggplot(f_entre_2y3, aes(x = lanzam, y = fun_dist, fill = Result)) +
geom_col(width = 0.7) +
geom_text(aes(label = round(fun_dist, 4), y = fun_dist + 0.2), size = 4, vjust = 0)+
labs(title = "Probabilidad de que un número de caras sea mayor a 2",
x = "Número de veces obteniendo cara",
y = "Probabilidad",
fill = "Resultado") +
theme_gray() +
theme(legend.text = element_text (size = text_size),
plot.title = element_text (size = text_size,
family = "times",
hjust = 0.5,
vjust = 1,
colour = "darkcyan",
face = "bold",
margin = margin(b = margin_size * 1.2)),
panel.background = element_rect(fill = "lightgray"),
panel.grid.major = element_line(color = "white", linewidth = 0.5),
panel.grid.minor = element_line(color = "white", linewidth = 0.25)) +
scale_fill_manual(values = c("Si" = "darkcyan", "No" = "black"))
ggplotly(p)
x_menor_1 = pbinom(1, 5, 0.5)
x_menor_3 = pbinom(3, 5, 0.5)
x_entre_2y3 = x_menor_3 - x_menor_1
x_entre_2y3
## [1] 0.625
Respuesta: La probabilidad de que el número de caras se encuentre entre 1 y 4 (ambos NO incluidos) es 0.625 que es la probabilidad acumulada de sacar 2 caras y 3 caras usando la formula
P(2 ≤ X ≤ 3) = P(X ≤ 2) - P(X ≤ 3)
12 - Esperanza de la v.a. X
Respuesta:
## [1] 2.5
La esperanza de la v.a. X es 2.5
13 - Varianza de la v.a. X
Respuesta:
## [1] 1.25
La varianza de la v.a. X es 2.5