Ver código
#library(knitr)
#library(kableExtra)
#library(magrittr)
#library(tidyverse)
#library(ggplot2)
#library(dplyr)[@tidyverse; @kableExtra; @dplyr]
#library(knitr)
#library(kableExtra)
#library(magrittr)
#library(tidyverse)
#library(ggplot2)
#library(dplyr)Los modelos discretos de probabilidad son herramientas matemáticas utilizadas en estadística y probabilidad para representar situaciones aleatorias en las que los resultados posibles pueden contarse de manera exacta.
Estos modelos permiten estudiar fenómenos donde la variable aleatoria solo puede tomar valores específicos y separados, generalmente números enteros.
Se utilizan en áreas como:
estadística,
economía,
ingeniería,
medicina,
administración,
inteligencia artificial.
Ejemplo sencillo
Si lanzas una moneda:
puede salir cara o sello,
no sabes exactamente qué ocurrirá,
pero sí puedes calcular la probabilidad.
Ese comportamiento se estudia con un modelo probabilístico.
Elementos principales
Un modelo probabilístico tiene:
Experimento aleatorio: acción que produce resultados inciertos.
Espacio muestral: conjunto de posibles resultados.
Variable aleatoria: valor numérico asociado al resultado.
Probabilidad: posibilidad de ocurrencia de cada resultado.
Distribución Bernoulli
La distribución Bernoulli es el modelo discreto más simple.
Describe experimentos aleatorios donde solo existen dos posibles resultados:
éxito, fracaso.
El resultado exitoso generalmente se representa con 1 y el fracaso con 0.
-Solo hay un ensayo. -Existen dos resultados posibles. -La probabilidad de éxito permanece constante.
Distribución Binomial
La distribución binomial se utiliza cuando se realizan varios ensayos Bernoulli independientes y se desea calcular el número total de éxitos.
Características
Número fijo de ensayos. Los ensayos son independientes. Solo existen éxito o fracaso. La probabilidad de éxito es constante.
Distribución de Poisson
La distribución de Poisson modela el número de veces que ocurre un evento dentro de un intervalo de tiempo, espacio o área.
Características Los eventos ocurren aleatoriamente. Las ocurrencias son independientes. Se analiza un intervalo fijo. Se trabaja con promedios de ocurrencia.
Distribución Hipergeométrica
La distribución hipergeométrica se utiliza cuando las extracciones se realizan sin reemplazo dentro de una población finita.
Características La población es limitada. No hay reemplazo. La probabilidad cambia en cada extracción.
Ejercicio 1.
Se sabe que el 60% de los alumnos de una universidad asisten a clases el viernes. En una encuesta a 8 alumnos de la universidad. ¿Cuál es la probabilidad de que a) por lo menos siete asistan a clase el viernes? b) por lo menos dos no asistan a clase.
Este ejercicio se resuelve con una Distribución Binomial:
-Inciso a) P(X >= 7)
n <- 8
p <- 0.60
p_x7 <- dbinom(7, size = n, prob = p)
p_x8 <- dbinom(8, size = n, prob = p)
p_a <- p_x7 + p_x8
cat("P(X = 7) =", round(p_x7, 4), "\n")P(X = 7) = 0.0896
cat("P(X = 8) =", round(p_x8, 4), "\n")P(X = 8) = 0.0168
cat("P(X >= 7) =", round(p_a, 4), "\n")P(X >= 7) = 0.1064
p_a2 <- pbinom(6, size = n, prob = p, lower.tail = FALSE)
cat("Verificacion pbinom:", round(p_a2, 4), "\n")Verificacion pbinom: 0.1064
library(kableExtra)
# Crear tabla
tabla <- data.frame(
Evento = c("P(X = 7)",
"P(X = 8)",
"P(X >= 7)",
"Verificacion con pbinom()"),
Resultado = c(round(p_x7, 4),
round(p_x8, 4),
round(p_a, 4),
round(p_a2, 4))
)
# Generar tabla con colores
kable(tabla,
caption = "Resultados de la distribución binomial",
align = "c") %>%
kable_styling(
bootstrap_options = c("striped", "bordered", "hover"),
full_width = FALSE
) %>%
row_spec(0,
bold = TRUE,
color = "white",
background = "darkblue")| Evento | Resultado |
|---|---|
| P(X = 7) | 0.0896 |
| P(X = 8) | 0.0168 |
| P(X >= 7) | 0.1064 |
| Verificacion con pbinom() | 0.1064 |
-Inciso b) P(Y >= 2)
q <- 1 - p
p_y0 <- dbinom(0, size = n, prob = q)
p_y1 <- dbinom(1, size = n, prob = q)
p_b <- 1 - (p_y0 + p_y1)
cat("P(Y = 0) =", round(p_y0, 4), "\n")P(Y = 0) = 0.0168
cat("P(Y = 1) =", round(p_y1, 4), "\n")P(Y = 1) = 0.0896
cat("P(Y >= 2) =", round(p_b, 4), "\n")P(Y >= 2) = 0.8936
p_b2 <- pbinom(1, size = n, prob = q, lower.tail = FALSE)
cat("Verificacion pbinom:", round(p_b2, 4), "\n")Verificacion pbinom: 0.8936
# Crear tabla
tabla3 <- data.frame(
Evento = c("P(Y = 0)",
"P(Y = 1)",
"P(Y >= 2)",
"Verificacion con pbinom()"),
Resultado = c(round(p_y0, 4),
round(p_y1, 4),
round(p_b, 4),
round(p_b2, 4))
)
# Mostrar tabla con colores y bordes
kable(tabla3,
caption = "Resultados de probabilidades para P(Y >= 2)",
align = "c") %>%
kable_styling(
bootstrap_options = c("striped", "bordered", "hover"),
full_width = FALSE
) %>%
row_spec(0,
bold = TRUE,
color = "white",
background = "darkblue") %>%
row_spec(1:nrow(tabla3),
background = c("#E8F8F5", "#D1F2EB"))| Evento | Resultado |
|---|---|
| P(Y = 0) | 0.0168 |
| P(Y = 1) | 0.0896 |
| P(Y >= 2) | 0.8936 |
| Verificacion con pbinom() | 0.8936 |
-Grafica
x <- 0:n
prob_x <- dbinom(x, size = n, prob = p)library(ggplot2)
media <- 4.8
desv <- 1.385641
# Datos para la curva normal
x <- seq(0, 10, length = 500)
y <- dnorm(x, mean = media, sd = desv)
datos <- data.frame(x, y)
# Gráfica
ggplot(datos, aes(x = x, y = y)) +
# Área sombreada
geom_area(
data = subset(datos, x >= 6.5),
fill = "#2E8B57",
alpha = 0.5
) +
# Curva Gaussiana
geom_line(
color = "#0B3C5D",
linewidth = 1.8
) +
# Línea de la media
geom_vline(
xintercept = media,
linetype = "dashed",
color = "#C0392B",
linewidth = 1.2
) +
# Etiquetas
labs(
title = "Distribución Binomial Aproximada por la Campana de Gauss",
subtitle = "Probabilidad de asistencia de estudiantes",
x = "Número de estudiantes que asisten",
y = "Densidad de probabilidad"
) +
# Tema profesional
theme_minimal(base_size = 15) +
theme(
plot.title = element_text(
face = "bold",
size = 18,
hjust = 0.5
),
plot.subtitle = element_text(
hjust = 0.5,
size = 13
),
axis.title = element_text(
face = "bold"
),
panel.grid.minor = element_blank()
)Esto indica que existe aproximadamente un 10.64% de probabilidad de que siete o más estudiantes asistan a clases el viernes.
Además, mediante la aproximación con la Campana de Gauss o distribución normal, se representó gráficamente el comportamiento probabilístico de la variable aleatoria, permitiendo visualizar de manera más clara la concentración de probabilidades alrededor de la media.
La gráfica mostró que la mayor concentración de estudiantes asistentes se encuentra cerca del valor esperado: lo cual significa que, en promedio, se espera que aproximadamente 5 estudiantes asistan a clases los viernes.
Ejercicio 2.
Según los registros universitarios fracasa el 5% de los alumnos de cierto curso. ¿cuál es la probabilidad de que, de 6 estudiantes seleccionados al azar, menos de 3 hayan fracasado?
Identificación de variables
n = 6 (estudiantes seleccionados)
p = 0,05 (probabilidad de fracaso)
X = número de alumnos que fracasan
Se busca: P(X < 3) = P(X = 0) + P(X = 1) + P(X = 2)
n <- 6 p <- 0.05
-Probabilidades individuales
p_x0 <- dbinom(0, size = n, prob = p)
p_x1 <- dbinom(1, size = n, prob = p)
p_x2 <- dbinom(2, size = n, prob = p)
p_menor3 <- p_x0 + p_x1 + p_x2
cat("P(X = 0) =", round(p_x0, 4), "\n")P(X = 0) = 7e-04
cat("P(X = 1) =", round(p_x1, 4), "\n")P(X = 1) = 0.0079
cat("P(X = 2) =", round(p_x2, 4), "\n")P(X = 2) = 0.0413
cat("P(X < 3) =", round(p_menor3, 4), "\n")P(X < 3) = 0.0498
p_ver <- pbinom(2, size = n, prob = p)
cat("Verificacion pbinom:", round(p_ver, 4), "\n")Verificacion pbinom: 0.0498
# Crear tabla
tabla2 <- data.frame(
Evento = c("P(X = 0)",
"P(X = 1)",
"P(X = 2)",
"P(X < 3)",
"Verificacion con pbinom()"),
Resultado = c(round(p_x0, 4),
round(p_x1, 4),
round(p_x2, 4),
round(p_menor3, 4),
round(p_ver, 4))
)
# Mostrar tabla con colores y bordes
kable(tabla2,
caption = "Resultados de probabilidades para P(X < 3)",
align = "c") %>%
kable_styling(
bootstrap_options = c("striped", "bordered", "hover"),
full_width = FALSE
) %>%
row_spec(0,
bold = TRUE,
color = "white",
background = "darkred") %>%
row_spec(1:nrow(tabla2),
background = c("#FDEDEC", "#FADBD8"))| Evento | Resultado |
|---|---|
| P(X = 0) | 0.0007 |
| P(X = 1) | 0.0079 |
| P(X = 2) | 0.0413 |
| P(X < 3) | 0.0498 |
| Verificacion con pbinom() | 0.0498 |
-Medidas descriptivas:
media <- n * p
varianza <- n * p * (1 - p)
desv_est <- sqrt(varianza)
asimetria <- (1 - 2*p) / sqrt(n*p*(1-p))
curtosis <- (1 - 6*p*(1-p)) / (n*p*(1-p))
cat("Media:", round(media, 4), "\n")Media: 4.8
cat("Varianza:", round(varianza, 4), "\n")Varianza: 1.92
cat("Desviacion estandar:", round(desv_est, 4), "\n")Desviacion estandar: 1.3856
cat("Asimetria:", round(asimetria, 4), "\n")Asimetria: -0.1443
cat("Curtosis excesiva:", round(curtosis, 4), "\n")Curtosis excesiva: -0.2292
# Crear tabla
tabla4 <- data.frame(
Medida = c("Media",
"Varianza",
"Desviacion estandar",
"Asimetria",
"Curtosis excesiva"),
Resultado = c(round(media, 4),
round(varianza, 4),
round(desv_est, 4),
round(asimetria, 4),
round(curtosis, 4))
)
# Mostrar tabla con colores y bordes
kable(tabla4,
caption = "Medidas estadísticas de la distribución binomial",
align = "c") %>%
kable_styling(
bootstrap_options = c("striped", "bordered", "hover"),
full_width = FALSE
) %>%
row_spec(0,
bold = TRUE,
color = "white",
background = "darkred") %>%
row_spec(1:nrow(tabla4),
background = c("#F4ECF7", "#E8DAEF"))| Medida | Resultado |
|---|---|
| Media | 4.8000 |
| Varianza | 1.9200 |
| Desviacion estandar | 1.3856 |
| Asimetria | -0.1443 |
| Curtosis excesiva | -0.2292 |
-Grafica
media <- n * p
desv <- sqrt(n * p * (1 - p))
# Valores para curva
x <- seq(0, 6, length = 1000)
# Densidad normal
y <- dnorm(x,
mean = media,
sd = desv)
datos <- data.frame(x, y)
# Gráfica
ggplot(datos, aes(x = x, y = y)) +
# Área sombreada
geom_area(
data = subset(datos, x <= 2.5),
fill = "#2E8B57",
alpha = 0.5
) +
# Curva
geom_line(
color = "#154360",
linewidth = 1.8
) +
# Media
geom_vline(
xintercept = media,
color = "#C0392B",
linetype = "dashed",
linewidth = 1.2
) +
labs(
title = "Distribución Binomial Aproximada",
subtitle = "Probabilidad de estudiantes reprobados",
x = "Número de estudiantes que fracasan",
y = "Densidad de probabilidad"
) +
theme_minimal(base_size = 15)Con base en el modelo de distribución binomial aplicado (n = 6, p = 0,05), se puede concluir lo siguiente: P(X < 3): La probabilidad de que menos de 3 estudiantes hayan fracasado es aproximadamente 0,9978 (99,78%), lo que indica que es casi seguro que en un grupo de 6 alumnos seleccionados al azar, a lo sumo 2 hayan reprobado el curso. Este resultado es coherente con la baja tasa de fracaso del 5%, lo que significa que la gran mayoría de los estudiantes aprueba el curso. La distribución está fuertemente sesgada hacia la derecha, con una media de apenas 0,30 alumnos esperados en fracaso por grupo, y una asimetría positiva que confirma que los valores altos de fracaso son extremadamente poco frecuentes. En conclusión, el modelo binomial demuestra que, dada la baja probabilidad de fracaso, es prácticamente seguro observar menos de 3 reprobados en muestras pequeñas de 6 estudiantes.
Ejercicio 3.
En promedio, el 10% de las varillas de madera usadas en cierto producto presentan problemas para ser usadas. ¿cuál es la probabilidad de que en un paquete de 15 varillas, a) encuentre exactamente 5 con defectos. b) por lo menos 10 estén nudosas, c) no más de 4 estén nudosas.
Identificación de variables
n = 15 (varillas en el paquete) p = 0,10 (probabilidad de defecto) X = número de varillas con defectos Se busca:
P(X = 5)
P(X ≥ 10)
P(X ≤ 4)
n <- 15
p <- 0.10
# a) Exactamente 5 con defectos
p_x5 <- dbinom(5, size = n, prob = p)
cat("a) P(X = 5) =", round(p_x5, 4), "\n")a) P(X = 5) = 0.0105
# b) Por lo menos 10 nudosas
p_x10 <- pbinom(9, size = n, prob = p, lower.tail = FALSE)
cat("b) P(X >= 10) =", round(p_x10, 4), "\n")b) P(X >= 10) = 0
# c) No mas de 4 nudosas
p_x4 <- pbinom(4, size = n, prob = p)
cat("c) P(X <= 4) =", round(p_x4, 4), "\n")c) P(X <= 4) = 0.9873
# Crear tabla
tabla5 <- data.frame(
Inciso = c("a)", "b)", "c)"),
Evento = c("P(X = 5)",
"P(X >= 10)",
"P(X <= 4)"),
Resultado = c(round(p_x5, 4),
round(p_x10, 4),
round(p_x4, 4))
)
# Mostrar tabla con colores y bordes
kable(tabla5,
caption = "Resultados de probabilidades binomiales",
align = "c") %>%
kable_styling(
bootstrap_options = c("striped", "bordered", "hover"),
full_width = FALSE
) %>%
row_spec(0,
bold = TRUE,
color = "white",
background = "darkorange") %>%
row_spec(1:nrow(tabla5),
background = c("#FEF5E7", "#FDEBD0"))| Inciso | Evento | Resultado |
|---|---|---|
| a) | P(X = 5) | 0.0105 |
| b) | P(X >= 10) | 0.0000 |
| c) | P(X <= 4) | 0.9873 |
media <- n * p
varianza <- n * p * (1 - p)
desv_est <- sqrt(varianza)
asimetria <- (1 - 2*p) / sqrt(n*p*(1-p))
curtosis <- (1 - 6*p*(1-p)) / (n*p*(1-p))
cat("Media:", round(media, 4), "\n")Media: 1.5
cat("Varianza:", round(varianza, 4), "\n")Varianza: 1.35
cat("Desviacion estandar:", round(desv_est, 4), "\n")Desviacion estandar: 1.1619
cat("Asimetria:", round(asimetria, 4), "\n")Asimetria: 0.6885
cat("Curtosis excesiva:", round(curtosis, 4), "\n")Curtosis excesiva: 0.3407
Grafico
media <- n * p
desv <- sqrt(n * p * (1 - p))
# Valores para curva
x <- seq(0, 15, length = 1000)
# Densidad normal
y <- dnorm(x,
mean = media,
sd = desv)
datos <- data.frame(x, y)
# Gráfica
ggplot(datos, aes(x = x, y = y)) +
# Área sombreada
geom_area(
data = subset(datos, x <= 4.5),
fill = "#2E8B57",
alpha = 0.5
) +
# Curva Gaussiana
geom_line(
color = "#154360",
linewidth = 1.8
) +
# Línea media
geom_vline(
xintercept = media,
color = "#C0392B",
linetype = "dashed",
linewidth = 1.2
) +
labs(
title = "Distribución Binomial Aproximada",
subtitle = "Varillas defectuosas",
x = "Número de varillas defectuosas",
y = "Densidad de probabilidad"
) +
theme_minimal(base_size = 15)Conclusión en el modelo de distribución binomial aplicado (n = 15, p = 0,10), se puede concluir lo siguiente:
P(X = 5): La probabilidad de encontrar exactamente 5 varillas con defectos es aproximadamente 0,0105 (1,05%). Es un evento poco probable, ya que supera considerablemente la media esperada de 1,5 varillas defectuosas por paquete.
P(X ≥ 10): La probabilidad de que al menos 10 varillas estén nudosas es aproximadamente 0,0000 (0,00%), lo que la convierte en un evento prácticamente imposible. Esto es coherente con la baja tasa de defectos del 10%, donde encontrar dos tercios o más del paquete defectuoso es extremadamente improbable.
P(X ≤ 4): La probabilidad de que no más de 4 varillas estén nudosas es aproximadamente 0,9873 (98,73%), lo que indica que es casi seguro que en un paquete de 15 varillas, la mayoría estará en buen estado. En términos generales, la distribución presenta una marcada asimetría positiva, lo que confirma que los defectos son poco frecuentes. La media de 1,5 varillas defectuosas por paquete refleja que el proceso de producción es bastante confiable, y los resultados obtenidos son consistentes con una tasa de fallo baja del 10%.
Ejercicio 4.
Una compañía de seguros considera que alrededor del 25% de los carros se accidentan cada año. ¿Cuál es la probabilidad de que por lo menos 3 de una muestra de 7 vehículos asegurados, se haya accidentado?
Otro problema binomial! Aquí la solución completa:
n = 7 vehículos p = 0.25 probabilidad de accidente Buscamos P(X ≥ 3)
P(X >= 3): al menos 3 accidentados
Usando complemento: P(X >= 3) = 1 - P(X <= 2)
n <- 7
p <- 0.25
p_x0 <- dbinom(0, size = n, prob = p)
p_x1 <- dbinom(1, size = n, prob = p)
p_x2 <- dbinom(2, size = n, prob = p)
p_resultado <- 1 - (p_x0 + p_x1 + p_x2)
cat("P(X = 0) =", round(p_x0, 4), "\n")P(X = 0) = 0.1335
cat("P(X = 1) =", round(p_x1, 4), "\n")P(X = 1) = 0.3115
cat("P(X = 2) =", round(p_x2, 4), "\n")P(X = 2) = 0.3115
cat("P(X <= 2) =", round(p_x0 + p_x1 + p_x2, 4), "\n")P(X <= 2) = 0.7564
cat("P(X >= 3) = 1 - P(X <= 2) =", round(p_resultado, 4), "\n")P(X >= 3) = 1 - P(X <= 2) = 0.2436
# Crear tabla
tabla7 <- data.frame(
Evento = c("P(X = 0)",
"P(X = 1)",
"P(X = 2)",
"P(X <= 2)",
"P(X >= 3)"),
Resultado = c(round(p_x0, 4),
round(p_x1, 4),
round(p_x2, 4),
round(p_x0 + p_x1 + p_x2, 4),
round(p_resultado, 4))
)
# Mostrar tabla con colores y bordes
kable(tabla7,
caption = "Resultados de probabilidades binomiales",
align = "c") %>%
kable_styling(
bootstrap_options = c("striped", "bordered", "hover"),
full_width = FALSE
) %>%
row_spec(0,
bold = TRUE,
color = "white",
background = "darkslateblue") %>%
row_spec(1:nrow(tabla7),
background = c("#EBF5FB", "#D6EAF8"))| Evento | Resultado |
|---|---|
| P(X = 0) | 0.1335 |
| P(X = 1) | 0.3115 |
| P(X = 2) | 0.3115 |
| P(X <= 2) | 0.7564 |
| P(X >= 3) | 0.2436 |
media <- n * p
desv <- sqrt(n * p * (1 - p))
# Valores para curva
x <- seq(0, 7, length = 1000)
# Densidad normal
y <- dnorm(x,
mean = media,
sd = desv)
# Data frame
datos <- data.frame(x, y)
# Gráfica
ggplot(datos, aes(x = x, y = y)) +
# Área sombreada
geom_area(
data = subset(datos, x >= 2.5),
fill = "#2E8B57",
alpha = 0.5
) +
# Curva Gaussiana
geom_line(
color = "#154360",
linewidth = 1.8
) +
# Línea media
geom_vline(
xintercept = media,
color = "#C0392B",
linetype = "dashed",
linewidth = 1.2
) +
labs(
title = "Distribución Binomial Aproximada",
subtitle = "Vehículos accidentados",
x = "Número de vehículos accidentados",
y = "Densidad de probabilidad"
) +
theme_minimal(base_size = 15)La probabilidad de que al menos 3 vehículos de una muestra de 7 se hayan accidentado es 0.2436 (24.36%), lo que significa que aproximadamente 1 de cada 4 muestras de este tamaño tendría 3 o más accidentes. Aunque la probabilidad individual de accidente es baja (25%), el riesgo acumulado en una flota es considerable para la aseguradora.
Ejercicio 5.
Los registros muestran que 30% de los pacientes admitidos en una clínica, no pagan sus facturas y eventualmente se condona la deuda. Suponga que llegan 4 nuevos pacientes a la clínica, cual es la probabilidad de que se tenga que perdonar la deuda de uno de los cuatro. b) los cuatro pacientes paguen sus facturas
Datos n = 4 pacientes p = 0.30 probabilidad de no pagar a) P(X = 1) — exactamente 1 no paga b) P(X = 0) — ninguno deja de pagar (los 4 pagan)
n <- 4
p <- 0.30
p_a <- dbinom(1, size = n, prob = p)
cat("P(X = 1) =", round(p_a, 4), "\n")P(X = 1) = 0.4116
# Crear tabla
tabla8 <- data.frame(
Evento = c("P(X = 1)"),
Resultado = c(round(p_a, 4))
)
# Mostrar tabla con colores y bordes
kable(tabla8,
caption = "Resultado de la probabilidad binomial",
align = "c") %>%
kable_styling(
bootstrap_options = c("striped", "bordered", "hover"),
full_width = FALSE
) %>%
row_spec(0,
bold = TRUE,
color = "white",
background = "darkmagenta") %>%
row_spec(1:nrow(tabla8),
background = "#F5EEF8")| Evento | Resultado |
|---|---|
| P(X = 1) | 0.4116 |
p_b <- dbinom(0, size = n, prob = p)
cat("P(X = 0) =", round(p_b, 4), "\n")P(X = 0) = 0.2401
x <- 0:n
prob_x <- dbinom(x, size = n, prob = p)# Crear tabla
tabla9 <- data.frame(
Evento = c("P(X = 0)"),
Resultado = c(round(p_b, 4))
)
# Mostrar tabla con colores y bordes
kable(tabla9,
caption = "Probabilidad de que X = 0",
align = "c") %>%
kable_styling(
bootstrap_options = c("striped", "bordered", "hover"),
full_width = FALSE
) %>%
row_spec(0,
bold = TRUE,
color = "white",
background = "#D85A30") %>%
row_spec(1:nrow(tabla9),
background = "#E8F8F5")| Evento | Resultado |
|---|---|
| P(X = 0) | 0.2401 |
# Tabla de distribución binomial completa
tabla_distribucion <- data.frame(
x = x,
Probabilidad = round(prob_x, 4)
)
# Mostrar tabla de distribución
kable(tabla_distribucion,
caption = "Distribución Binomial Completa",
align = "c") %>%
kable_styling(
bootstrap_options = c("striped", "bordered", "hover"),
full_width = FALSE
) %>%
row_spec(0,
bold = TRUE,
color = "white",
background = "#1D9E75") %>%
row_spec(1:nrow(tabla_distribucion),
background = c("#EBF5FB", "#D6EAF8"))| x | Probabilidad |
|---|---|
| 0 | 0.2401 |
| 1 | 0.4116 |
| 2 | 0.2646 |
| 3 | 0.0756 |
| 4 | 0.0081 |
media <- n * p
desv <- sqrt(n * p * (1 - p))
# Valores
x <- seq(0, 4, length = 1000)
# Curva normal
y <- dnorm(
x,
mean = media,
sd = desv
)
datos <- data.frame(x, y)
# Gráfica
ggplot(datos, aes(x = x, y = y)) +
# Área sombreada
geom_area(
data = subset(datos, x <= 1.5),
fill = "#2E8B57",
alpha = 0.5
) +
# Curva
geom_line(
color = "#154360",
linewidth = 1.8
) +
# Línea media
geom_vline(
xintercept = media,
color = "#C0392B",
linetype = "dashed",
linewidth = 1.2
) +
labs(
title = "Distribución Binomial Aproximada",
subtitle = "Pacientes que no pagan",
x = "Número de pacientes",
y = "Densidad de probabilidad"
) +
theme_minimal(base_size = 15)Probabilidad de que exactamente 1 paciente no pague: La probabilidad de que se tenga que perdonar la deuda de exactamente uno de los cuatro pacientes es de 0.4116, es decir, existe un 41.16% de probabilidad de que solo un paciente no pague su factura. Esto indica que es el escenario más probable dentro de la distribución.
Probabilidad de que los 4 pacientes paguen: La probabilidad de que los cuatro pacientes paguen sus facturas es de 0.2401, es decir, hay un 24.01% de probabilidad de que ninguno condone su deuda. Aunque es posible, es un escenario relativamente poco frecuente dado que el 30% de los pacientes habitualmente no paga.
Ejercicio 6.
El conmutador de un hospital recibe en promedio 20 llamadas cada dos minutos. Cuál es la probabilidad de que lleguen como máximo dos llamadas en un periodo de 15 segundos.
Este es un problema de distribución de Poisson! Aquí el razonamiento:
Tasa original: 20 llamadas cada 2 minutos (120 segundos) Hay que ajustar la tasa a 15 segundos:
λ = (20 / 120) × 15 = 2.5 llamadas cada 15 segundos
Buscamos P(X ≤ 2)
Tasa ajustada a 15 segundos
lambda <- (20 / 120) * 15 # = 2.5
cat("Lambda (15 seg) =", lambda, "\n\n")Lambda (15 seg) = 2.5
p_x0 <- dpois(0, lambda = lambda)
p_x1 <- dpois(1, lambda = lambda)
p_x2 <- dpois(2, lambda = lambda)
p_resultado <- p_x0 + p_x1 + p_x2
cat("P(X = 0) =", round(p_x0, 4), "\n")P(X = 0) = 0.0821
cat("P(X = 1) =", round(p_x1, 4), "\n")P(X = 1) = 0.2052
cat("P(X = 2) =", round(p_x2, 4), "\n")P(X = 2) = 0.2565
cat("P(X <= 2) =", round(p_resultado, 4), "\n")P(X <= 2) = 0.5438
# Crear tabla
tabla10 <- data.frame(
Evento = c("P(X = 0)",
"P(X = 1)",
"P(X = 2)",
"P(X <= 2)"),
Resultado = c(round(p_x0, 4),
round(p_x1, 4),
round(p_x2, 4),
round(p_resultado, 4))
)
# Mostrar tabla con colores y bordes
kable(tabla10,
caption = "Resultados de la distribución de Poisson",
align = "c") %>%
kable_styling(
bootstrap_options = c("striped", "bordered", "hover"),
full_width = FALSE
) %>%
row_spec(0,
bold = TRUE,
color = "white",
background = "darkred") %>%
row_spec(1:nrow(tabla10),
background = c("#FDEDEC", "#FADBD8"))| Evento | Resultado |
|---|---|
| P(X = 0) | 0.0821 |
| P(X = 1) | 0.2052 |
| P(X = 2) | 0.2565 |
| P(X <= 2) | 0.5438 |
-Grafica
x <- seq(0, 8, length = 1000)
# Curva normal aproximada
y <- dnorm(
x,
mean = lambda,
sd = sqrt(lambda)
)
datos <- data.frame(x, y)
# Gráfica
ggplot(datos, aes(x = x, y = y)) +
# Área sombreada
geom_area(
data = subset(datos, x <= 2.5),
fill = "#2E8B57",
alpha = 0.5
) +
# Curva Gaussiana
geom_line(
color = "#154360",
linewidth = 1.8
) +
# Línea media
geom_vline(
xintercept = lambda,
color = "#C0392B",
linetype = "dashed",
linewidth = 1.2
) +
labs(
title = "Distribución de Poisson Aproximada",
subtitle = "Llamadas recibidas en el hospital",
x = "Número de llamadas",
y = "Densidad de probabilidad"
) +
theme_minimal(base_size = 15)La probabilidad de que lleguen como máximo 2 llamadas al conmutador del hospital en un periodo de 15 segundos es de 0.5438, es decir, existe un 54.38% de probabilidad de que el conmutador reciba 0, 1 o 2 llamadas en dicho intervalo. Dado que la tasa promedio es de 2.5 llamadas por cada 15 segundos, este resultado indica que poco más de la mitad del tiempo el número de llamadas se mantiene en ese rango, lo que refleja una carga moderada pero frecuente para el operador del hospital.
Ejercicio 7.
Los clientes llegan a una exhibición a razón de 6,8 clientes / hora Calcule la probabilidad de que a) en la primera media hora por lo menos lleguen dos clientes; b) en cualquier hora dada llegue más de uno.
problema de distribución de Poisson! Ajustando las tasas:
Tasa original: 6.8 clientes/hora a) Ajuste a 30 minutos: λ = 6.8 / 2 = 3.4 clientes por media hora b) Se mantiene: λ = 6.8 clientes por hora.
lambda_a <- 6.8 / 2 # = 3.4
p_x0_a <- dpois(0, lambda = lambda_a)
p_x1_a <- dpois(1, lambda = lambda_a)
p_a <- 1 - (p_x0_a + p_x1_a)
cat("Lambda (30 min) =", lambda_a, "\n")Lambda (30 min) = 3.4
cat("P(X = 0) =", round(p_x0_a, 4), "\n")P(X = 0) = 0.0334
cat("P(X = 1) =", round(p_x1_a, 4), "\n")P(X = 1) = 0.1135
cat("P(X >= 2) =", round(p_a, 4), "\n\n")P(X >= 2) = 0.8532
# Verificacion
cat("Verificacion ppois:", round(ppois(1, lambda_a, lower.tail = FALSE), 4), "\n\n")Verificacion ppois: 0.8532
# Crear tabla
tabla11 <- data.frame(
Evento = c("Lambda (30 min)",
"P(X = 0)",
"P(X = 1)",
"P(X >= 2)",
"Verificacion con ppois()"),
Resultado = c(round(lambda_a, 4),
round(p_x0_a, 4),
round(p_x1_a, 4),
round(p_a, 4),
round(ppois(1, lambda_a, lower.tail = FALSE), 4))
)
# Mostrar tabla con colores y bordes
kable(tabla11,
caption = "Resultados de la distribución de Poisson",
align = "c") %>%
kable_styling(
bootstrap_options = c("striped", "bordered", "hover"),
full_width = FALSE
) %>%
row_spec(0,
bold = TRUE,
color = "white",
background = "darkorange") %>%
row_spec(1:nrow(tabla11),
background = c("#FEF5E7", "#FDEBD0"))| Evento | Resultado |
|---|---|
| Lambda (30 min) | 3.4000 |
| P(X = 0) | 0.0334 |
| P(X = 1) | 0.1135 |
| P(X >= 2) | 0.8532 |
| Verificacion con ppois() | 0.8532 |
# - Inciso b) P(X > 1) en una hora
lambda_b <- 6.8
p_x0_b <- dpois(0, lambda = lambda_b)
p_x1_b <- dpois(1, lambda = lambda_b)
p_b <- 1 - (p_x0_b + p_x1_b)
cat("Lambda (1 hora) =", lambda_b, "\n")Lambda (1 hora) = 6.8
cat("P(X = 0) =", round(p_x0_b, 4), "\n")P(X = 0) = 0.0011
cat("P(X = 1) =", round(p_x1_b, 4), "\n")P(X = 1) = 0.0076
cat("P(X > 1) =", round(p_b, 4), "\n\n")P(X > 1) = 0.9913
# Verificacion
cat("Verificacion ppois:", round(ppois(1, lambda_b, lower.tail = FALSE), 4), "\n\n")Verificacion ppois: 0.9913
# Crear tabla
tabla12 <- data.frame(
Evento = c("Lambda (1 hora)",
"P(X = 0)",
"P(X = 1)",
"P(X > 1)",
"Verificacion con ppois()"),
Resultado = c(round(lambda_b, 4),
round(p_x0_b, 4),
round(p_x1_b, 4),
round(p_b, 4),
round(ppois(1, lambda_b, lower.tail = FALSE), 4))
)
# Mostrar tabla con colores y bordes
kable(tabla12,
caption = "Resultados de la distribución de Poisson",
align = "c") %>%
kable_styling(
bootstrap_options = c("striped", "bordered", "hover"),
full_width = FALSE
) %>%
row_spec(0,
bold = TRUE,
color = "white",
background = "darkorange") %>%
row_spec(1:nrow(tabla12),
background = c("#EBF5FB", "#D6EAF8"))| Evento | Resultado |
|---|---|
| Lambda (1 hora) | 6.8000 |
| P(X = 0) | 0.0011 |
| P(X = 1) | 0.0076 |
| P(X > 1) | 0.9913 |
| Verificacion con ppois() | 0.9913 |
x <- seq(0, 15, length = 1000)
# Curva normal aproximada
y <- dnorm(
x,
mean = lambda_b,
sd = sqrt(lambda_b)
)
datos <- data.frame(x, y)
# Gráfica
ggplot(datos, aes(x = x, y = y)) +
# Área sombreada
geom_area(
data = subset(datos, x >= 1.5),
fill = "#2E8B57",
alpha = 0.5
) +
# Curva
geom_line(
color = "#154360",
linewidth = 1.8
) +
# Media
geom_vline(
xintercept = lambda_b,
color = "#C0392B",
linetype = "dashed",
linewidth = 1.2
) +
labs(
title = "Distribución de Poisson Aproximada",
subtitle = "Llegada de clientes por hora",
x = "Número de clientes",
y = "Densidad de probabilidad"
) +
theme_minimal(base_size = 15)) En la primera media hora lleguen por lo menos 2 clientes: Con una tasa ajustada de 3.4 clientes por media hora, la probabilidad de que lleguen al menos 2 clientes en los primeros 30 minutos es de 0.8531, es decir un 85.31%. Esto indica que es muy probable que durante la primera media hora de la exhibición ya haya una afluencia considerable de visitantes, lo que sugiere que el personal debe estar preparado desde el inicio del evento.
Conclusión general: Dado que los clientes llegan a razón de 6.8 por hora, la exhibición mantiene un flujo constante y elevado de visitantes. La probabilidad de tener al menos 2 clientes es altísima tanto en media hora (85.31%) como en una hora completa (99.13%), lo que refleja que la exhibición tiene una demanda sostenida y que es prácticamente imposible que transcurra una hora sin recibir más de un visitante. Esto es relevante para la planificación del personal y la logística del evento.
Ejercicio 8.
El número promedio de urgencias que llega a un hospital en una hora es de 12. Cuál es la probabilidad de que en un minuto lleguen por lo menos 2 urgencias. ¿Cuál es el número de urgencias esperado por minuto?
Distribución de Poisson ajustando la tasa: Tasa original: 12 urgencias/hora Ajuste a 1 minuto: λ = 12 / 60 = 0.2 urgencias por minuto
lambda <- 12 / 60 # = 0.2 urgencias por minuto
cat("Lambda (1 minuto) =", lambda, "\n\n")Lambda (1 minuto) = 0.2
# --- P(X >= 2): por lo menos 2 urgencias en 1 minuto ---
p_x0 <- dpois(0, lambda = lambda)
p_x1 <- dpois(1, lambda = lambda)
p_resultado <- 1 - (p_x0 + p_x1)
cat("P(X = 0) =", round(p_x0, 4), "\n")P(X = 0) = 0.8187
cat("P(X = 1) =", round(p_x1, 4), "\n")P(X = 1) = 0.1637
cat("P(X >= 2) =", round(p_resultado, 4), "\n\n")P(X >= 2) = 0.0175
# Verificacion
cat("Verificacion ppois:", round(ppois(1, lambda, lower.tail = FALSE), 4), "\n\n")Verificacion ppois: 0.0175
# --- Numero esperado de urgencias por minuto ---
esperado <- lambda
cat("Numero esperado de urgencias por minuto:", esperado, "\n")Numero esperado de urgencias por minuto: 0.2
# Crear tabla
tabla13 <- data.frame(
Evento = c("Lambda (1 minuto)",
"P(X = 0)",
"P(X = 1)",
"P(X >= 2)",
"Verificacion con ppois()",
"Numero esperado de urgencias"),
Resultado = c(round(lambda, 4),
round(p_x0, 4),
round(p_x1, 4),
round(p_resultado, 4),
round(ppois(1, lambda, lower.tail = FALSE), 4),
round(esperado, 4))
)
# Mostrar tabla con colores y bordes
kable(tabla13,
caption = "Resultados de la distribución de Poisson",
align = "c") %>%
kable_styling(
bootstrap_options = c("striped", "bordered", "hover"),
full_width = FALSE
) %>%
row_spec(0,
bold = TRUE,
color = "white",
background = "darkgreen") %>%
row_spec(1:nrow(tabla13),
background = c("#E8F8F5", "#D1F2EB"))| Evento | Resultado |
|---|---|
| Lambda (1 minuto) | 0.2000 |
| P(X = 0) | 0.8187 |
| P(X = 1) | 0.1637 |
| P(X >= 2) | 0.0175 |
| Verificacion con ppois() | 0.0175 |
| Numero esperado de urgencias | 0.2000 |
x <- seq(0, 6, length = 1000)
# Curva normal aproximada
y <- dnorm(
x,
mean = lambda,
sd = sqrt(lambda)
)
datos <- data.frame(x, y)
# Gráfica
ggplot(datos, aes(x = x, y = y)) +
# Área sombreada
geom_area(
data = subset(datos, x >= 1.5),
fill = "#2E8B57",
alpha = 0.5
) +
# Curva Gaussiana
geom_line(
color = "#154360",
linewidth = 1.8
) +
# Línea media
geom_vline(
xintercept = lambda,
color = "#C0392B",
linetype = "dashed",
linewidth = 1.2
) +
labs(
title = "Distribución de Poisson Aproximada",
subtitle = "Urgencias por minuto",
x = "Número de urgencias",
y = "Densidad de probabilidad"
) +
theme_minimal(base_size = 15)A nivel de minuto, el flujo de urgencias es muy bajo y esporádico, con una probabilidad mínima (1.76%) de recibir 2 o más casos simultáneamente. Sin embargo, visto en perspectiva horaria, el hospital enfrenta una demanda constante de 12 urgencias por hora, lo que exige una planificación eficiente del personal y los recursos para responder oportunamente a cada caso que se presente.
Ejercicio 9.
Las estadísticas indican que en una fábrica se presentan en promedio 10 accidentes por trimestre. Determine la probabilidad de que no haya más de 12 accidentes en el último trimestre.
lambda <- 10
# -- ---
p_resultado <- ppois(12, lambda = lambda)
cat("Lambda =", lambda, "\n\n")Lambda = 10
# Calculo manual
for(k in 0:12){
cat("P(X =", k, ") =", round(dpois(k, lambda), 4), "\n")
}P(X = 0 ) = 0
P(X = 1 ) = 5e-04
P(X = 2 ) = 0.0023
P(X = 3 ) = 0.0076
P(X = 4 ) = 0.0189
P(X = 5 ) = 0.0378
P(X = 6 ) = 0.0631
P(X = 7 ) = 0.0901
P(X = 8 ) = 0.1126
P(X = 9 ) = 0.1251
P(X = 10 ) = 0.1251
P(X = 11 ) = 0.1137
P(X = 12 ) = 0.0948
cat("\nP(X <= 12) =", round(p_resultado, 4), "\n")
P(X <= 12) = 0.7916
# Crear vector de valores
x <- 0:12
# Calcular probabilidades
probabilidades <- round(dpois(x, lambda), 4)
# Crear tabla de probabilidades
tabla14 <- data.frame(
Evento = paste("P(X =", x, ")"),
Probabilidad = probabilidades
)
# Mostrar tabla de probabilidades
kable(tabla14,
caption = "Probabilidades individuales de la distribución de Poisson",
align = "c") %>%
kable_styling(
bootstrap_options = c("striped", "bordered", "hover"),
full_width = FALSE
) %>%
row_spec(0,
bold = TRUE,
color = "white",
background = "darkred") %>%
row_spec(1:nrow(tabla14),
background = c("#FDEDEC", "#FADBD8"))| Evento | Probabilidad |
|---|---|
| P(X = 0 ) | 0.0000 |
| P(X = 1 ) | 0.0005 |
| P(X = 2 ) | 0.0023 |
| P(X = 3 ) | 0.0076 |
| P(X = 4 ) | 0.0189 |
| P(X = 5 ) | 0.0378 |
| P(X = 6 ) | 0.0631 |
| P(X = 7 ) | 0.0901 |
| P(X = 8 ) | 0.1126 |
| P(X = 9 ) | 0.1251 |
| P(X = 10 ) | 0.1251 |
| P(X = 11 ) | 0.1137 |
| P(X = 12 ) | 0.0948 |
# Tabla resumen
tabla15 <- data.frame(
Concepto = c("Lambda",
"P(X <= 12)"),
Resultado = c(round(lambda, 4),
round(p_resultado, 4))
)
# Mostrar tabla resumen
kable(tabla15,
caption = "Resultado acumulado de la distribución de Poisson",
align = "c") %>%
kable_styling(
bootstrap_options = c("striped", "bordered", "hover"),
full_width = FALSE
) %>%
row_spec(0,
bold = TRUE,
color = "white",
background = "darkblue") %>%
row_spec(1:nrow(tabla15),
background = c("#EBF5FB", "#D6EAF8"))| Concepto | Resultado |
|---|---|
| Lambda | 10.0000 |
| P(X <= 12) | 0.7916 |
x <- seq(0, 20, length = 1000)
# Curva normal aproximada
y <- dnorm(
x,
mean = lambda,
sd = sqrt(lambda)
)
datos <- data.frame(x, y)
# Gráfica
ggplot(datos, aes(x = x, y = y)) +
# Área sombreada
geom_area(
data = subset(datos, x <= 12.5),
fill = "#2E8B57",
alpha = 0.5
) +
# Curva Gaussiana
geom_line(
color = "#154360",
linewidth = 1.8
) +
# Línea media
geom_vline(
xintercept = lambda,
color = "#C0392B",
linetype = "dashed",
linewidth = 1.2
) +
labs(
title = "Distribución de Poisson Aproximada",
subtitle = "Accidentes por trimestre",
x = "Número de accidentes",
y = "Densidad de probabilidad"
) +
theme_minimal(base_size = 15)Con una tasa promedio de 10 accidentes por trimestre, la fábrica enfrenta un riesgo considerable en materia de seguridad laboral. Sin embargo, existe una probabilidad alta (79.16%) de que el número de accidentes no supere los 12 en un trimestre dado, lo que indica que los casos extremos por encima de este valor son relativamente poco frecuentes. Aun así, desde una perspectiva de gestión de riesgos, una media de 10 accidentes trimestrales equivale a más de 40 accidentes al año, lo que representa una señal de alerta importante para implementar medidas preventivas y mejorar las condiciones de seguridad en la planta.
Ejercicio 10.
El número de personas que ingresan a la unidad de cuidados intensivos de un hospital en un día cualquiera, es de 5 personas diarias. ¿Cuál es la probabilidad de que el número de personas que ingresan a la unidad de cuidados intensivos en un día particular sea menor o igual a 2 personas?
Distribución de Poisson! Sin ajuste de tasa: Tasa: λ = 5 personas por día Buscamos P(X ≤ 2)
lambda <- 5
# --- P(X <= 2): menor o igual a 2 ingresos ---
p_x0 <- dpois(0, lambda = lambda)
p_x1 <- dpois(1, lambda = lambda)
p_x2 <- dpois(2, lambda = lambda)
p_resultado <- p_x0 + p_x1 + p_x2
cat("Lambda =", lambda, "\n\n")Lambda = 5
cat("P(X = 0) =", round(p_x0, 4), "\n")P(X = 0) = 0.0067
cat("P(X = 1) =", round(p_x1, 4), "\n")P(X = 1) = 0.0337
cat("P(X = 2) =", round(p_x2, 4), "\n")P(X = 2) = 0.0842
cat("P(X <= 2) =", round(p_resultado, 4), "\n\n")P(X <= 2) = 0.1247
# Verificacion
cat("Verificacion ppois:", round(ppois(2, lambda), 4), "\n")Verificacion ppois: 0.1247
# Crear tabla
tabla16 <- data.frame(
Evento = c("Lambda",
"P(X = 0)",
"P(X = 1)",
"P(X = 2)",
"P(X <= 2)",
"Verificacion con ppois()"),
Resultado = c(round(lambda, 4),
round(p_x0, 4),
round(p_x1, 4),
round(p_x2, 4),
round(p_resultado, 4),
round(ppois(2, lambda), 4))
)
# Mostrar tabla con colores y bordes
kable(tabla16,
caption = "Resultados de la distribución de Poisson",
align = "c") %>%
kable_styling(
bootstrap_options = c("striped", "bordered", "hover"),
full_width = FALSE
) %>%
row_spec(0,
bold = TRUE,
color = "white",
background = "darkmagenta") %>%
row_spec(1:nrow(tabla16),
background = c("#F5EEF8", "#EBDEF0"))| Evento | Resultado |
|---|---|
| Lambda | 5.0000 |
| P(X = 0) | 0.0067 |
| P(X = 1) | 0.0337 |
| P(X = 2) | 0.0842 |
| P(X <= 2) | 0.1247 |
| Verificacion con ppois() | 0.1247 |
x <- seq(0, 15, length = 1000)
# Curva normal aproximada
y <- dnorm(
x,
mean = lambda,
sd = sqrt(lambda)
)
datos <- data.frame(x, y)
# Gráfica
ggplot(datos, aes(x = x, y = y)) +
# Área sombreada
geom_area(
data = subset(datos, x <= 2.5),
fill = "#2E8B57",
alpha = 0.5
) +
# Curva Gaussiana
geom_line(
color = "#154360",
linewidth = 1.8
) +
# Línea media
geom_vline(
xintercept = lambda,
color = "#C0392B",
linetype = "dashed",
linewidth = 1.2
) +
labs(
title = "Distribución de Poisson Aproximada",
subtitle = "Ingresos diarios a UCI",
x = "Número de personas",
y = "Densidad de probabilidad"
) +
theme_minimal(base_size = 15)Con una tasa promedio de 5 ingresos diarios, la UCI opera bajo una demanda constante y elevada. La baja probabilidad de recibir 2 o menos pacientes en un día (12.47%) indica que la unidad debe estar preparada la mayor parte del tiempo para atender 3 o más ingresos diarios. Esto resalta la importancia de mantener una disponibilidad adecuada de camas, personal médico y recursos en la UCI, ya que la probabilidad de días con baja ocupación es reducida y no puede asumirse como la norma en la planificación hospitalaria.
Ejercicio 11.
Un jefe de almacén sabe que 6 de las 25 bicicletas que tiene para la venta presentan fallas en los frenos y necesitan ajuste. Si el vendedor que no tenía conocimiento de lo anterior vendió en el día 4 bicicletas, ¿cuál es la probabilidad de que vendiera dos de las que requerían ajuste.
Este es un problema de distribución Hipergeométrica Ya que se selecciona una muestra sin reemplazo de una población finita:
N = 25 bicicletas en total K = 6 bicicletas con fallas n = 4 bicicletas vendidas Buscamos P(X = 2)
N <- 25 # total de bicicletas
K <- 6 # bicicletas con fallas
n <- 4 # bicicletas vendidas
# --- P(X = 2): exactamente 2 con fallas ---
p_resultado <- dhyper(2, m = K, n = N - K, k = n)
cat("N =", N, "\n")N = 25
cat("K =", K, "(con fallas)\n")K = 6 (con fallas)
cat("n =", n, "(vendidas)\n\n")n = 4 (vendidas)
cat("P(X = 2) =", round(p_resultado, 4), "\n")P(X = 2) = 0.2028
# Distribucion completa
cat("\nDistribucion completa:\n")
Distribucion completa:
for(x in 0:4){
cat("P(X =", x, ") =", round(dhyper(x, m = K, n = N - K, k = n), 4), "\n")
}P(X = 0 ) = 0.3064
P(X = 1 ) = 0.4596
P(X = 2 ) = 0.2028
P(X = 3 ) = 0.03
P(X = 4 ) = 0.0012
# Crear distribución completa
x <- 0:4
probabilidades <- round(dhyper(x, m = K, n = N - K, k = n), 4)
# Tabla principal
tabla17 <- data.frame(
Concepto = c("N (total bicicletas)",
"K (bicicletas con fallas)",
"n (bicicletas vendidas)",
"P(X = 2)"),
Resultado = c(N,
K,
n,
round(p_resultado, 4))
)
# Mostrar tabla principal
kable(tabla17,
caption = "Resultados de la distribución hipergeométrica",
align = "c") %>%
kable_styling(
bootstrap_options = c("striped", "bordered", "hover"),
full_width = FALSE
) %>%
row_spec(0,
bold = TRUE,
color = "white",
background = "darkgreen") %>%
row_spec(1:nrow(tabla17),
background = c("#E8F8F5", "#D1F2EB"))| Concepto | Resultado |
|---|---|
| N (total bicicletas) | 25.0000 |
| K (bicicletas con fallas) | 6.0000 |
| n (bicicletas vendidas) | 4.0000 |
| P(X = 2) | 0.2028 |
# Tabla de distribución completa
tabla18 <- data.frame(
Evento = paste("P(X =", x, ")"),
Probabilidad = probabilidades
)
# Mostrar tabla distribución
kable(tabla18,
caption = "Distribución completa",
align = "c") %>%
kable_styling(
bootstrap_options = c("striped", "bordered", "hover"),
full_width = FALSE
) %>%
row_spec(0,
bold = TRUE,
color = "white",
background = "darkblue") %>%
row_spec(1:nrow(tabla18),
background = c("#EBF5FB", "#D6EAF8"))| Evento | Probabilidad |
|---|---|
| P(X = 0 ) | 0.3064 |
| P(X = 1 ) | 0.4596 |
| P(X = 2 ) | 0.2028 |
| P(X = 3 ) | 0.0300 |
| P(X = 4 ) | 0.0012 |
media <- n * (K / N)
desv <- sqrt(
n * (K/N) * (1 - K/N) *
((N - n)/(N - 1))
)
# Valores
x_vals <- seq(0, 4, length = 1000)
# Curva normal aproximada
y <- dnorm(
x_vals,
mean = media,
sd = desv
)
datos <- data.frame(x_vals, y)
# Gráfica
ggplot(datos,
aes(x = x_vals, y = y)) +
# Área sombreada
geom_area(
data = subset(datos,
x_vals >= 1.5 &
x_vals <= 2.5),
fill = "#2E8B57",
alpha = 0.5
) +
# Curva
geom_line(
color = "#154360",
linewidth = 1.8
) +
# Línea media
geom_vline(
xintercept = media,
color = "#C0392B",
linetype = "dashed",
linewidth = 1.2
) +
labs(
title = "Distribución Hipergeométrica Aproximada",
subtitle = "Bicicletas con fallas en frenos",
x = "Número de bicicletas defectuosas",
y = "Densidad de probabilidad"
) +
theme_minimal(base_size = 15)Resultado: P(X = 2) = 0.2028 → 20.28%
Ejercicio 12.
De un grupo de 20 ingenieros con doctorado, se seleccionan 10 para un alto cargo de una compañía. ¿Cuál es la probabilidad de que los 10 seleccionados incluya a los 5 ingenieros que tienen las mejores calificaciones del grupo de 20?
N=20 → total de ingenieros K=5 → ingenieros con mejores calificaciones n=10 → ingenieros seleccionados Queremos que los 10 seleccionados incluyan a los 5 mejores.
La probabilidad se calcula con distribución hipergeométrica:
# Datos
N <- 20
K <- 5
n <- 10
# Probabilidad de incluir a los 5 mejores
p_resultado <- dhyper(5, m = K, n = N - K, k = n)
# Mostrar resultado
cat("P(X = 5) =", round(p_resultado, 6), "\n")P(X = 5) = 0.016254
-Grafica
media <- n * (K / N)
# Desviación estándar
desv <- sqrt(
n * (K/N) * (1 - K/N) *
((N - n)/(N - 1))
)
# Valores
x_vals <- seq(0, 10, length = 1000)
# Curva normal aproximada
y <- dnorm(
x_vals,
mean = media,
sd = desv
)
datos <- data.frame(x_vals, y)
# Gráfica
ggplot(datos,
aes(x = x_vals, y = y)) +
# Área sombreada
geom_area(
data = subset(datos,
x_vals >= 4.5),
fill = "#2E8B57",
alpha = 0.5
) +
# Curva Gaussiana
geom_line(
color = "#154360",
linewidth = 1.8
) +
# Línea media
geom_vline(
xintercept = media,
color = "#C0392B",
linetype = "dashed",
linewidth = 1.2
) +
labs(
title = "Distribución Hipergeométrica Aproximada",
subtitle = "Selección de ingenieros",
x = "Número de mejores ingenieros incluidos",
y = "Densidad de probabilidad"
) +
theme_minimal(base_size = 15)La probabilidad de que en la selección de 10 ingenieros queden incluidos exactamente los 5 ingenieros con las mejores calificaciones es aproximadamente: P(X=5)≈0.0163P(X = 5) 0.0163P(X=5)≈0.0163 Esto significa que existe solamente un 1.63% de probabilidad de que los cinco ingenieros más destacados sean seleccionados dentro del grupo de 10 elegidos al azar. Por lo tanto, se concluye que este evento es poco probable, ya que la posibilidad de que todos los mejores ingenieros sean incluidos en la selección es bastante baja.
Ejercicio 13.
Un almacén contiene diez maquinas impresoras, cuatro de las cuales están defectuosas. Una compañía selecciona al azar cinco de las maquinas, pensando que todas están en condiciones de trabajar, ¿cuál es la probabilidad de que las cinco maquinas estén en buen estado?
Datos:
Total de máquinas: N=10 Máquinas defectuosas: 4 Máquinas en buen estado: 6 Máquinas seleccionadas: n=5
# Datos
N <- 10
buenas <- 6
n <- 5
# Probabilidad de seleccionar 5 buenas
p_resultado <- dhyper(5,
m = buenas,
n = N - buenas,
k = n)
# Mostrar resultado
cat("P(X = 5) =", round(p_resultado, 4), "\n")P(X = 5) = 0.0238
-Grafica
media <- n * (K / N)
# Desviación estándar
desv <- sqrt(
n * (K/N) * (1 - K/N) *
((N - n)/(N - 1))
)
# Valores
x_vals <- seq(0, 5, length = 1000)
# Curva normal aproximada
y <- dnorm(
x_vals,
mean = media,
sd = desv
)
datos <- data.frame(x_vals, y)
# Gráfica
ggplot(datos,
aes(x = x_vals, y = y)) +
# Área sombreada
geom_area(
data = subset(datos,
x_vals >= 4.5),
fill = "#2E8B57",
alpha = 0.5
) +
# Curva
geom_line(
color = "#154360",
linewidth = 1.8
) +
# Línea media
geom_vline(
xintercept = media,
color = "#C0392B",
linetype = "dashed",
linewidth = 1.2
) +
labs(
title = "Distribución Hipergeométrica Aproximada",
subtitle = "Selección de impresoras en buen estado",
x = "Número de máquinas buenas",
y = "Densidad de probabilidad"
) +
theme_minimal(base_size = 15)La probabilidad de que las cinco máquinas seleccionadas estén en buen estado es aproximadamente:
P(X=5)≈0.0238
Esto significa que existe solamente un 2.38% de probabilidad de seleccionar cinco máquinas totalmente funcionales, por lo que el evento es poco probable debido a la cantidad de máquinas defectuosas presentes en el almacén.
Ejercicio 14.
En promedio una casa de cada 2000 en cierta zona de Barranquilla se incendia durante el año, si hay 6000 casas en dicha zona ¿Cuál es la probabilidad de que más de 3 casas se incendien durante el año?
Este problema se resuelve con la distribución geométrica, porque se busca la probabilidad de obtener el primer éxito antes de cierto número de intentos.
Datos:
Probabilidad de aprobar: p=0.7 Probabilidad de fallar: q=1−p=0.3
Queremos encontrar la probabilidad de que el estudiante apruebe antes del cuarto intento, es decir:
P(X<4)
Equivale a aprobar en el intento 1, 2 o 3:
Este problema se resuelve con la distribución geométrica, porque se busca la probabilidad de obtener el primer éxito antes de cierto número de intentos.
Datos:
Probabilidad de aprobar: p=0.7 Probabilidad de fallar: q=1−p=0.3
Queremos encontrar la probabilidad de que el estudiante apruebe antes del cuarto intento, es decir:
P(X<4)
Equivale a aprobar en el intento 1, 2 o 3:
P(X<4)=1−P(X≥4) P(X<4)=1−q 3 P(X<4)=1−(0.3) 3 P(X<4)=1−0.027 P(X<4)=0.973
# Datos
p <- 0.7
q <- 1 - p
# Probabilidad de aprobar antes del 4 intento
p_resultado <- 1 - (q^3)
# Mostrar resultado
cat("P(X < 4) =", round(p_resultado, 4), "\n")P(X < 4) = 0.973
x <- seq(0, 10, length = 1000)
# Curva normal aproximada
y <- dnorm(
x,
mean = lambda,
sd = sqrt(lambda)
)
datos <- data.frame(x, y)
# Gráfica
ggplot(datos, aes(x = x, y = y)) +
# Área sombreada
geom_area(
data = subset(datos, x >= 3.5),
fill = "#2E8B57",
alpha = 0.5
) +
# Curva
geom_line(
color = "#154360",
linewidth = 1.8
) +
# Línea media
geom_vline(
xintercept = lambda,
color = "#C0392B",
linetype = "dashed",
linewidth = 1.2
) +
labs(
title = "Distribución de Poisson Aproximada",
subtitle = "Incendios en viviendas",
x = "Número de casas incendiadas",
y = "Densidad de probabilidad"
) +
theme_minimal(base_size = 15)La probabilidad de que el estudiante apruebe la prueba antes del cuarto intento es:
P(X<4)=0.973
Es decir, existe un 97.3% de probabilidad de que el estudiante logre aprobar el examen en alguno de sus primeros tres intentos.
Ejercicio 15.
La probabilidad de que un estudiante de aviación pase la prueba escrita para obtener su licencia de piloto privado es de 0.7. encuentre la probabilidad de que una persona pase la prueba antes del cuarto intento.
Este ejercicio se resuelve utilizando la distribución geométrica, ya que se analiza el número de intentos necesarios hasta obtener el primer éxito.
Datos:
Este ejercicio se resuelve utilizando la distribución geométrica, ya que se analiza el número de intentos necesarios hasta obtener el primer éxito.
Datos:
Probabilidad de aprobar: p=0.7 Probabilidad de reprobar: q=1−p=0.3
Se pide la probabilidad de que la persona apruebe antes del cuarto intento, es decir, en el intento 1, 2 o 3.
P(X<4)=1−P(X≥4)
La probabilidad de llegar al cuarto intento significa fallar tres veces seguidas:
P(X≥4)=q 3
Entonces:
P(X<4)=1−(0.3) 3 P(X<4)=1−0.027 P(X<4)=0.973
# Datos
p <- 0.7
q <- 1 - p
# Probabilidad de aprobar antes del cuarto intento
p_resultado <- 1 - (q^3)
# Mostrar resultado
cat("P(X < 4) =", round(p_resultado, 4), "\n")P(X < 4) = 0.973
-Grafica
x <- seq(1, 8, length = 1000)
# Aproximación suavizada
y <- dnorm(
x,
mean = 1/p,
sd = sqrt((1-p)/(p^2))
)
datos <- data.frame(x, y)
# Gráfica
ggplot(datos, aes(x = x, y = y)) +
# Área sombreada
geom_area(
data = subset(datos, x <= 3),
fill = "#2E8B57",
alpha = 0.5
) +
# Curva
geom_line(
color = "#154360",
linewidth = 1.8
) +
# Línea media
geom_vline(
xintercept = 1/p,
color = "#C0392B",
linetype = "dashed",
linewidth = 1.2
) +
labs(
title = "Distribución Geométrica Aproximada",
subtitle = "Intentos para aprobar examen",
x = "Número de intentos",
y = "Densidad de probabilidad"
) +
theme_minimal(base_size = 15)La probabilidad de que el estudiante apruebe la prueba antes del cuarto intento es:
0.973
Es decir, existe un 97.3% de probabilidad de que la persona logre aprobar el examen en alguno de sus primeros tres intentos.
La distribución Ji Cuadrado o Chi-Cuadrado es una distribución de probabilidad continua utilizada principalmente en estadística para analizar variaciones y comprobar hipótesis.
Se representa por:
χ2
y depende de un parámetro llamado grados de libertad (gl).
Características principales Solo toma valores positivos. Su gráfica tiene forma asimétrica hacia la derecha. A medida que aumentan los grados de libertad, la curva se parece más a una distribución normal. Usos principales
La distribución Ji Cuadrado se utiliza para:
Pruebas de independencia en tablas de contingencia. Pruebas de bondad de ajuste. Análisis de varianza y estimación de varianzas poblacionales. Ejemplo sencillo
Se puede usar para verificar si existe relación entre:
género y preferencia de producto, enfermedad y tratamiento, o cualquier comparación entre variables categóricas.
Ejercicio 1
Para una distribución chi-cuadrada encuentre:
2 0.02 2 0.10 2 0.05
cuando v = 18. cuando v = 9. cuando v = 30.
# 1)
chi_1 <- qchisq(0.02, df = 18)
# 2)
chi_2 <- qchisq(0.10, df = 9)
# 3)
chi_3 <- qchisq(0.05, df = 30)
# Resultados
cat("Chi-cuadrada 0.02 con v=18 =", round(chi_1,4), "\n")Chi-cuadrada 0.02 con v=18 = 7.9062
cat("Chi-cuadrada 0.10 con v=9 =", round(chi_2,4), "\n")Chi-cuadrada 0.10 con v=9 = 4.1682
cat("Chi-cuadrada 0.05 con v=30 =", round(chi_3,4), "\n")Chi-cuadrada 0.05 con v=30 = 18.4927
GRÁFICA DISTRIBUCIÓN ji-CUADRADA
library(ggplot2)
# Valores
x <- seq(0, 60, length = 1000)
# Distribución chi-cuadrada
y <- dchisq(x, df = 18)
datos <- data.frame(x, y)
# Gráfica
ggplot(datos, aes(x = x, y = y)) +
geom_line(
color = "#154360",
linewidth = 1.5
) +
geom_area(
data = subset(datos, x <= 8.2307),
fill = "#2E8B57",
alpha = 0.5
) +
labs(
title = "Distribución Chi-cuadrada",
subtitle = "v = 18",
x = expression(chi^2),
y = "Densidad"
) +
theme_minimal(base_size = 15)La distribución Chi-cuadrada permitió determinar los valores críticos asociados a diferentes probabilidades y grados de libertad.
Los resultados obtenidos fueron: Chi-cuadrada 0.02 con v=18 = 7.9062 Chi-cuadrada 0.10 con v=9 = 4.1682 Chi-cuadrada 0.05 con v=30 = 18.4927
Estos valores son utilizados frecuentemente en pruebas de hipótesis, análisis de varianza y pruebas de independencia estadística.
Ejercicio 2 Para una distribución chi-cuadrada encuentre χ2
tal que:
Paso 1: Transformar la probabilidad
qchisq(0.03, df = 6)[1] 1.329608
paso 2: Buscar el valor crítico
qchisq(0.03, df = 6)[1] 1.329608
Paso 1
P(X2<)=1-0.01
paso 2:
qchisq(0.99, df = 22)[1] 40.28936
Paso 1: Hallar la probabilidad acumulada en 42.980
pchisq(42.980, df = 28)[1] 0.9650395
Paso 2: Sumar la probabilidad faltante
0.9581+0.035=0.9931
Paso 3: Buscar el nuevo valor crítico
qchisq(0.9931, df = 28)[1] 49.7475
chi_a <- qchisq(0.03, df = 6)
chi_b <- qchisq(0.99, df = 22)
p_inicial <- pchisq(42.980, df = 28)
p_total <- p_inicial + 0.035
chi_c <- qchisq(p_total, df = 28)
cat("a) =", round(chi_a,4), "\n")a) = 1.3296
cat("b) =", round(chi_b,4), "\n")b) = 40.2894
cat("c) =", round(chi_c,4), "\n")c) = NaN
GRÁFICA CHI-CUADRADA
library(ggplot2)
# Valores
x <- seq(0, 70, length = 1000)
# Distribución
y <- dchisq(x, df = 28)
datos <- data.frame(x, y)
# Gráfica
ggplot(datos, aes(x = x, y = y)) +
geom_line(
color = "#154360",
linewidth = 1.5
) +
geom_area(
data = subset(datos,
x >= 42.980 &
x <= 49.5874),
fill = "#2E8B57",
alpha = 0.5
) +
labs(
title = "Distribución Chi-cuadrada",
subtitle = "v = 28",
x = expression(chi^2),
y = "Densidad"
) +
theme_minimal(base_size = 15)La distribución Chi-cuadrada permitió calcular valores críticos asociados a probabilidades acumuladas y áreas de cola.
Los resultados obtenidos fueron: a) = 1.3296 b) = 40.2894 c) = NaN
Estos valores son fundamentales en pruebas de hipótesis, análisis de independencia y estudios estadísticos inferenciales.
Ejercicio 3
La distribución t de Student se utiliza cuando:
La muestra es pequeña. La desviación estándar poblacional es desconocida. Se trabaja con inferencia estadística.
pt(1.895, df = 10)[1] 0.9563303
1 - pt(1.742, df = 20)[1] 0.04843377
pt(2.315, df = 15) -
pt(-1.645, df = 15)[1] 0.9220269
1 - pt(-1.985, df = 14)[1] 0.9664522
a <- pt(1.895, df = 10)
# b)
b <- 1 - pt(1.742, df = 20)
# c)
c <- pt(2.315, df = 15) -
pt(-1.645, df = 15)
# d)
d <- 1 - pt(-1.985, df = 14)
# Resultados
cat("a) =", round(a,4), "\n")a) = 0.9563
cat("b) =", round(b,4), "\n")b) = 0.0484
cat("c) =", round(c,4), "\n")c) = 0.922
cat("d) =", round(d,4), "\n")d) = 0.9665
GRÁFICA t DE STUDENT
library(ggplot2)
# Valores
x <- seq(-5, 5, length = 1000)
# Densidad t
y <- dt(x, df = 15)
datos <- data.frame(x, y)
# Gráfica
ggplot(datos, aes(x = x, y = y)) +
geom_line(
color = "#154360",
linewidth = 1.5
) +
geom_area(
data = subset(datos,
x >= -1.645 &
x <= 2.315),
fill = "#2E8B57",
alpha = 0.5
) +
labs(
title = "Distribución t de Student",
subtitle = "v = 15",
x = "Valores t",
y = "Densidad"
) +
theme_minimal(base_size = 15)La distribución t de Student permitió calcular probabilidades acumuladas y áreas entre intervalos para diferentes grados de libertad.
Los resultados obtenidos fueron: a) = 0.9563 b) = 0.0484 c) = 0.922 d) = 0.9665
Estas probabilidades son ampliamente utilizadas en pruebas de hipótesis, intervalos de confianza y análisis estadísticos con muestras pequeñas.
Ejercicio 4
Dada una muestra aleatoria de tamaño 30 de una distribución normal, encuentre k tal que: a. P (−1.725 < T < k) = 0.945 b. P (k < T < 2.415) = 0.085 c. P (−k < T < k) = 0.92
La distribución t de Student es una distribución de probabilidad continua utilizada en estadística para trabajar con muestras pequeñas y cuando la desviación estándar de la población es desconocida.
Fue desarrollada por William Sealy Gosset bajo el seudónimo “Student”.
Características principales Tiene forma de campana, similar a la distribución normal. Es más ancha y con colas más largas que la normal. Depende de los grados de libertad (gl). A medida que aumentan los grados de libertad, la distribución t se parece cada vez más a la distribución normal. ¿Cuándo se utiliza?
Se usa principalmente cuando:
la muestra es pequeña (n<30), no se conoce la desviación estándar poblacional, y se desea realizar inferencias sobre medias. Aplicaciones principales
La distribución t de Student se utiliza en:
pruebas de hipótesis, intervalos de confianza, comparación de medias, análisis estadístico de muestras pequeñas
# ==================================================
#
# ==================================================
# Grados de libertad
v <- 29
# --------------------------------------------------
# a)
# --------------------------------------------------
p1 <- pt(-1.725, df = v)
k_a <- qt(0.945 + p1, df = v)
# --------------------------------------------------
# b)
# --------------------------------------------------
p2 <- pt(2.415, df = v)
k_b <- qt(p2 - 0.085, df = v)
# --------------------------------------------------
# c)
# --------------------------------------------------
k_c <- qt(0.96, df = v)
# --------------------------------------------------
# Resultados
# --------------------------------------------------
cat("a) k =", round(k_a,4), "\n")a) k = 2.5909
cat("b) k =", round(k_b,4), "\n")b) k = 1.335
cat("c) k =", round(k_c,4), "\n")c) k = 1.8142
GRÁFICA t DE STUDENT
library(ggplot2)
# Valores en el eje X
x <- seq(-5, 5, length = 1000)
# Densidad t de Student
y <- dt(x, df = 29)
# Data frame
datos <- data.frame(x, y)
# Valor k
k <- 1.8070
# Gráfica
ggplot(datos, aes(x = x, y = y)) +
# Área sombreada entre -k y k
geom_area(
data = subset(datos, x >= -k & x <= k),
fill = "#2E8B57",
alpha = 0.5
) +
# Curva t
geom_line(
color = "#154360",
linewidth = 1.5
) +
# Líneas verticales
geom_vline(
xintercept = c(-k, k),
color = "#C0392B",
linetype = "dashed",
linewidth = 1
) +
# Etiquetas
labs(
title = "Distribución t de Student",
subtitle = "P(-k < T < k) = 0.92",
x = "Valores t",
y = "Densidad"
) +
# Tema profesional
theme_minimal(base_size = 15)La distribución t de Student permitió determinar los valores críticos (k) asociados a diferentes probabilidades en una muestra aleatoria de tamaño 30, utilizando (v = 29) grados de libertad.
Los resultados obtenidos fueron: a) k = 2.5909 b) k = 1.335 c) k = 1.8142
Estos resultados permiten identificar regiones de probabilidad dentro de la distribución t de Student, siendo fundamentales en inferencia estadística, construcción de intervalos de confianza y pruebas de hipótesis cuando el tamaño de muestra es pequeño y la desviación estándar poblacional es desconocida.
La gráfica ayudó a visualizar el área de probabilidad central comprendida entre los valores críticos (-k) y (k).
Distribucion T de Student
Ejercicio: 1 Encuentre las siguientes probabilidades utilizando la distribución t de Student: a. Encuentre P (T < 1.895) cuando v = 10. b. Encuentre P (T > 1.742) cuando v = 20. c. Encuentre P (−1.645 < T < 2.315) cuando v = 15. d. Encuentre P (T > −1.985) cuando v = 14.
# =========================================================
# DISTRIBUCIÓN t DE STUDENT
# PROBABILIDADES Y GRÁFICAS
# =========================================================
# =========================================================
# LIBRERÍAS
# =========================================================
library(ggplot2)
library(dplyr)
library(kableExtra)
# =========================================================
# INCISO A
# P(T < 1.895) cuando gl = 10
# =========================================================
v_a <- 10
# Probabilidad
p_a <- pt(1.895, df = v_a)
cat("\n====================================\n")
====================================
cat("INCISO A\n")INCISO A
cat("P(T < 1.895) =", round(p_a,4), "\n")P(T < 1.895) = 0.9563
cat("====================================\n")====================================
# Datos para gráfica
x_a <- seq(-5, 5, by = 0.01)
df_a <- data.frame(
x = x_a,
dens = dt(x_a, df = v_a)
)
# Gráfica
ggplot(df_a, aes(x, dens)) +
geom_area(
data = subset(df_a, x <= 1.895),
fill = "#1D9E75",
alpha = 0.5
) +
geom_line(
color = "#154360",
linewidth = 1.3
) +
geom_vline(
xintercept = 1.895,
color = "#C0392B",
linetype = "dashed",
linewidth = 1
) +
labs(
title = "Distribución t de Student",
subtitle = "P(T < 1.895), gl = 10",
x = "Valores t",
y = "Densidad"
) +
theme_minimal(base_size = 14)# =========================================================
# INCISO B
# P(T > 1.742) cuando gl = 20
# =========================================================
v_b <- 20
# Probabilidad
p_b <- 1 - pt(1.742, df = v_b)
cat("\n====================================\n")
====================================
cat("INCISO B\n")INCISO B
cat("P(T > 1.742) =", round(p_b,4), "\n")P(T > 1.742) = 0.0484
cat("====================================\n")====================================
# Datos para gráfica
x_b <- seq(-5, 5, by = 0.01)
df_b <- data.frame(
x = x_b,
dens = dt(x_b, df = v_b)
)
# Gráfica
ggplot(df_b, aes(x, dens)) +
geom_area(
data = subset(df_b, x >= 1.742),
fill = "#D85A30",
alpha = 0.5
) +
geom_line(
color = "#154360",
linewidth = 1.3
) +
geom_vline(
xintercept = 1.742,
color = "#C0392B",
linetype = "dashed",
linewidth = 1
) +
labs(
title = "Distribución t de Student",
subtitle = "P(T > 1.742), gl = 20",
x = "Valores t",
y = "Densidad"
) +
theme_minimal(base_size = 14)# =========================================================
# INCISO C
# P(-1.645 < T < 2.315) cuando gl = 15
# =========================================================
v_c <- 15
# Probabilidad
p_c <- pt(2.315, df = v_c) -
pt(-1.645, df = v_c)
cat("\n====================================\n")
====================================
cat("INCISO C\n")INCISO C
cat("P(-1.645 < T < 2.315) =",
round(p_c,4), "\n")P(-1.645 < T < 2.315) = 0.922
cat("====================================\n")====================================
# Datos para gráfica
x_c <- seq(-5, 5, by = 0.01)
df_c <- data.frame(
x = x_c,
dens = dt(x_c, df = v_c)
)
# Gráfica
ggplot(df_c, aes(x, dens)) +
geom_area(
data = subset(
df_c,
x >= -1.645 & x <= 2.315
),
fill = "#2E8B57",
alpha = 0.5
) +
geom_line(
color = "#154360",
linewidth = 1.3
) +
geom_vline(
xintercept = c(-1.645, 2.315),
color = "#C0392B",
linetype = "dashed",
linewidth = 1
) +
labs(
title = "Distribución t de Student",
subtitle = "P(-1.645 < T < 2.315), gl = 15",
x = "Valores t",
y = "Densidad"
) +
theme_minimal(base_size = 14)# =========================================================
# INCISO D
# P(T > -1.985) cuando gl = 14
# =========================================================
v_d <- 14
# Probabilidad
p_d <- 1 - pt(-1.985, df = v_d)
cat("\n====================================\n")
====================================
cat("INCISO D\n")INCISO D
cat("P(T > -1.985) =",
round(p_d,4), "\n")P(T > -1.985) = 0.9665
cat("====================================\n")====================================
# Datos para gráfica
x_d <- seq(-5, 5, by = 0.01)
df_d <- data.frame(
x = x_d,
dens = dt(x_d, df = v_d)
)
# Gráfica
ggplot(df_d, aes(x, dens)) +
geom_area(
data = subset(df_d, x >= -1.985),
fill = "#3498DB",
alpha = 0.5
) +
geom_line(
color = "#154360",
linewidth = 1.3
) +
geom_vline(
xintercept = -1.985,
color = "#C0392B",
linetype = "dashed",
linewidth = 1
) +
labs(
title = "Distribución t de Student",
subtitle = "P(T > -1.985), gl = 14",
x = "Valores t",
y = "Densidad"
) +
theme_minimal(base_size = 14)# =========================================================
# TABLA RESUMEN
# =========================================================
tabla_resultados <- data.frame(
Inciso = c("a", "b", "c", "d"),
Probabilidad = c(
"P(T < 1.895)",
"P(T > 1.742)",
"P(-1.645 < T < 2.315)",
"P(T > -1.985)"
),
Resultado = c(
round(p_a,4),
round(p_b,4),
round(p_c,4),
round(p_d,4)
)
)
# Mostrar tabla bonita
kable(
tabla_resultados,
caption = "Resultados de la Distribución t de Student",
align = "c"
) %>%
kable_styling(
bootstrap_options = c("striped", "bordered", "hover"),
full_width = FALSE
) %>%
row_spec(
0,
bold = TRUE,
color = "white",
background = "darkblue"
)| Inciso | Probabilidad | Resultado |
|---|---|---|
| a | P(T < 1.895) | 0.9563 |
| b | P(T > 1.742) | 0.0484 |
| c | P(-1.645 < T < 2.315) | 0.9220 |
| d | P(T > -1.985) | 0.9665 |
# =========================================================
# DISTRIBUCIÓN t DE STUDENT
# CADA INCISO COMO UNA CURVA DIFERENTE
# =========================================================
library(ggplot2)
# =========================================================
# DATOS
# =========================================================
x <- seq(-5, 5, by = 0.01)
# ---------------------------------------------------------
# INCISO A
# ---------------------------------------------------------
df_a <- data.frame(
x = x,
dens = dt(x, df = 10)
)
# ---------------------------------------------------------
# INCISO B
# ---------------------------------------------------------
df_b <- data.frame(
x = x,
dens = dt(x, df = 20)
)
# ---------------------------------------------------------
# INCISO C
# ---------------------------------------------------------
df_c <- data.frame(
x = x,
dens = dt(x, df = 15)
)
# ---------------------------------------------------------
# INCISO D
# ---------------------------------------------------------
df_d <- data.frame(
x = x,
dens = dt(x, df = 14)
)
# =========================================================
# GRÁFICA
# =========================================================
ggplot() +
# ======================================================
# CURVA INCISO A
# ======================================================
geom_line(
data = df_a,
aes(x = x, y = dens),
color = "#00B894",
linewidth = 1.8
) +
geom_area(
data = subset(df_a, x <= 1.895),
aes(x = x, y = dens),
fill = "#00B894",
alpha = 0.35
) +
geom_vline(
xintercept = 1.895,
color = "#00B894",
linetype = "dashed",
linewidth = 1
) +
# ======================================================
# CURVA INCISO B
# ======================================================
geom_line(
data = df_b,
aes(x = x, y = dens),
color = "#E17055",
linewidth = 1.8
) +
geom_area(
data = subset(df_b, x >= 1.742),
aes(x = x, y = dens),
fill = "#E17055",
alpha = 0.30
) +
geom_vline(
xintercept = 1.742,
color = "#E17055",
linetype = "dashed",
linewidth = 1
) +
# ======================================================
# CURVA INCISO C
# ======================================================
geom_line(
data = df_c,
aes(x = x, y = dens),
color = "#0984E3",
linewidth = 1.8
) +
geom_area(
data = subset(
df_c,
x >= -1.645 & x <= 2.315
),
aes(x = x, y = dens),
fill = "#0984E3",
alpha = 0.25
) +
geom_vline(
xintercept = c(-1.645, 2.315),
color = "#0984E3",
linetype = "dashed",
linewidth = 1
) +
# ======================================================
# CURVA INCISO D
# ======================================================
geom_line(
data = df_d,
aes(x = x, y = dens),
color = "#6C5CE7",
linewidth = 1.8
) +
geom_area(
data = subset(df_d, x >= -1.985),
aes(x = x, y = dens),
fill = "#6C5CE7",
alpha = 0.20
) +
geom_vline(
xintercept = -1.985,
color = "#6C5CE7",
linetype = "dashed",
linewidth = 1
) +
# ======================================================
# ETIQUETAS DE CADA CURVA
# ======================================================
annotate(
"text",
x = 3.5,
y = 0.03,
label = "A",
color = "#00B894",
size = 6,
fontface = "bold"
) +
annotate(
"text",
x = 3.2,
y = 0.06,
label = "B",
color = "#E17055",
size = 6,
fontface = "bold"
) +
annotate(
"text",
x = -3.5,
y = 0.09,
label = "C",
color = "#0984E3",
size = 6,
fontface = "bold"
) +
annotate(
"text",
x = -3.8,
y = 0.045,
label = "D",
color = "#6C5CE7",
size = 6,
fontface = "bold"
) +
# ======================================================
# TÍTULOS
# ======================================================
labs(
title = "Distribuciones t de Student",
subtitle = "Cada inciso representado como una curva independiente",
x = "Valores t",
y = "Densidad"
) +
# ======================================================
# TEMA PROFESIONAL
# ======================================================
theme_minimal(base_size = 16) +
theme(
plot.title = element_text(
face = "bold",
size = 22,
hjust = 0.5
),
plot.subtitle = element_text(
size = 14,
hjust = 0.5,
color = "gray35"
),
axis.title = element_text(
face = "bold"
)
)Ladistribución de los valores estan determinados por:
a P(T < 1.895)=0.9564 b P(T > 1.742)=0.0483 c P(-1.645 < T < 2.315)=0.9045 d P(T > -1.985)=0.9665
Las gráficas permitieron visualizar las regiones de probabilidad asociadas a cada ejercicio, mostrando cómo la distribución t cambia según los grados de libertad.
Ejercicio 2.
Dada una muestra aleatoria de tamaño 30 de una distribución normal, encuentre k tal que: a. P (−1.725 < T < k) = 0.945 b. P (k < T < 2.415) = 0.085 c. P (−k < T < k) = 0.92
# ==================================================
# DISTRIBUCIÓN t DE STUDENT
# ENCONTRAR VALORES k
# ==================================================
# Librería
library(ggplot2)
# ==================================================
# DATOS GENERALES
# ==================================================
# Grados de libertad
v <- 29
# Valores eje X
x <- seq(-5, 5, by = 0.01)
# ==================================================
# INCISO A
# P(-1.725 < T < k) = 0.945
# ==================================================
# Probabilidad acumulada inicial
p_a1 <- pt(-1.725, df = v)
# Probabilidad acumulada final
p_a2 <- 0.945 + p_a1
# Valor k
k_a <- qt(p_a2, df = v)
cat("====================================\n")====================================
cat("INCISO A\n")INCISO A
cat("k =", round(k_a,4), "\n")k = 2.5909
cat("====================================\n\n")====================================
# Data frame
df_a <- data.frame(
x = x,
dens = dt(x, df = v)
)
# Gráfica
ggplot(df_a, aes(x, dens)) +
geom_area(
data = subset(
df_a,
x >= -1.725 & x <= k_a
),
fill = "#1D9E75",
alpha = 0.5
) +
geom_line(
color = "#154360",
linewidth = 1.3
) +
geom_vline(
xintercept = c(-1.725, k_a),
color = "#C0392B",
linetype = "dashed",
linewidth = 1
) +
labs(
title = "Distribución t de Student",
subtitle = "P(-1.725 < T < k) = 0.945",
x = "Valores t",
y = "Densidad"
) +
theme_minimal(base_size = 14)# ==================================================
# INCISO B
# P(k < T < 2.415) = 0.085
# ==================================================
# Probabilidad acumulada superior
p_b1 <- pt(2.415, df = v)
# Probabilidad acumulada de k
p_b2 <- p_b1 - 0.085
# Valor k
k_b <- qt(p_b2, df = v)
cat("====================================\n")====================================
cat("INCISO B\n")INCISO B
cat("k =", round(k_b,4), "\n")k = 1.335
cat("====================================\n\n")====================================
# Data frame
df_b <- data.frame(
x = x,
dens = dt(x, df = v)
)
# Gráfica
ggplot(df_b, aes(x, dens)) +
geom_area(
data = subset(
df_b,
x >= k_b & x <= 2.415
),
fill = "#D85A30",
alpha = 0.5
) +
geom_line(
color = "#154360",
linewidth = 1.3
) +
geom_vline(
xintercept = c(k_b, 2.415),
color = "#C0392B",
linetype = "dashed",
linewidth = 1
) +
labs(
title = "Distribución t de Student",
subtitle = "P(k < T < 2.415) = 0.085",
x = "Valores t",
y = "Densidad"
) +
theme_minimal(base_size = 14)# ==================================================
# INCISO C
# P(-k < T < k) = 0.92
# ==================================================
# Probabilidad acumulada
p_c <- 0.96
# Valor k
k_c <- qt(p_c, df = v)
cat("====================================\n")====================================
cat("INCISO C\n")INCISO C
cat("k =", round(k_c,4), "\n")k = 1.8142
cat("====================================\n\n")====================================
# Data frame
df_c <- data.frame(
x = x,
dens = dt(x, df = v)
)
# Gráfica
ggplot(df_c, aes(x, dens)) +
geom_area(
data = subset(
df_c,
x >= -k_c & x <= k_c
),
fill = "#3498DB",
alpha = 0.5
) +
geom_line(
color = "#154360",
linewidth = 1.3
) +
geom_vline(
xintercept = c(-k_c, k_c),
color = "#C0392B",
linetype = "dashed",
linewidth = 1
) +
labs(
title = "Distribución t de Student",
subtitle = "P(-k < T < k) = 0.92",
x = "Valores t",
y = "Densidad"
) +
theme_minimal(base_size = 14)# ==================================================
# TABLA DE RESULTADOS
# ==================================================
tabla_resultados <- data.frame(
Inciso = c(
"a",
"b",
"c"
),
Expresion = c(
"P(-1.725 < T < k) = 0.945",
"P(k < T < 2.415) = 0.085",
"P(-k < T < k) = 0.92"
),
Resultado_k = c(
round(k_a,4),
round(k_b,4),
round(k_c,4)
)
)
# Mostrar tabla
print(tabla_resultados) Inciso Expresion Resultado_k
1 a P(-1.725 < T < k) = 0.945 2.5909
2 b P(k < T < 2.415) = 0.085 1.3350
3 c P(-k < T < k) = 0.92 1.8142
# =========================================================
# DISTRIBUCIÓN t DE STUDENT
# CADA INCISO COMO CURVA DIFERENTE
# VALORES k
# =========================================================
library(ggplot2)
# =========================================================
# DATOS GENERALES
# =========================================================
# Grados de libertad
v <- 29
# Valores eje X
x <- seq(-5, 5, by = 0.01)
# =========================================================
# INCISO A
# P(-1.725 < T < k) = 0.945
# =========================================================
p_a1 <- pt(-1.725, df = v)
p_a2 <- 0.945 + p_a1
k_a <- qt(p_a2, df = v)
cat("====================================\n")====================================
cat("INCISO A\n")INCISO A
cat("k =", round(k_a,4), "\n")k = 2.5909
cat("====================================\n\n")====================================
# =========================================================
# INCISO B
# P(k < T < 2.415) = 0.085
# =========================================================
p_b1 <- pt(2.415, df = v)
p_b2 <- p_b1 - 0.085
k_b <- qt(p_b2, df = v)
cat("====================================\n")====================================
cat("INCISO B\n")INCISO B
cat("k =", round(k_b,4), "\n")k = 1.335
cat("====================================\n\n")====================================
# =========================================================
# INCISO C
# P(-k < T < k) = 0.92
# =========================================================
p_c <- 0.96
k_c <- qt(p_c, df = v)
cat("====================================\n")====================================
cat("INCISO C\n")INCISO C
cat("k =", round(k_c,4), "\n")k = 1.8142
cat("====================================\n\n")====================================
# =========================================================
# DATA FRAMES
# =========================================================
df_a <- data.frame(
x = x,
dens = dt(x, df = v)
)
df_b <- data.frame(
x = x,
dens = dt(x, df = v)
)
df_c <- data.frame(
x = x,
dens = dt(x, df = v)
)
# =========================================================
# GRÁFICA PROFESIONAL COMBINADA
# =========================================================
ggplot() +
# ======================================================
# CURVA INCISO A
# ======================================================
geom_line(
data = df_a,
aes(x = x, y = dens),
color = "#00B894",
linewidth = 1.8
) +
geom_area(
data = subset(
df_a,
x >= -1.725 & x <= k_a
),
aes(x = x, y = dens),
fill = "#00B894",
alpha = 0.35
) +
geom_vline(
xintercept = c(-1.725, k_a),
color = "#00B894",
linetype = "dashed",
linewidth = 1
) +
# ======================================================
# CURVA INCISO B
# ======================================================
geom_line(
data = df_b,
aes(x = x, y = dens),
color = "#E17055",
linewidth = 1.8
) +
geom_area(
data = subset(
df_b,
x >= k_b & x <= 2.415
),
aes(x = x, y = dens),
fill = "#E17055",
alpha = 0.30
) +
geom_vline(
xintercept = c(k_b, 2.415),
color = "#E17055",
linetype = "dashed",
linewidth = 1
) +
# ======================================================
# CURVA INCISO C
# ======================================================
geom_line(
data = df_c,
aes(x = x, y = dens),
color = "#0984E3",
linewidth = 1.8
) +
geom_area(
data = subset(
df_c,
x >= -k_c & x <= k_c
),
aes(x = x, y = dens),
fill = "#0984E3",
alpha = 0.25
) +
geom_vline(
xintercept = c(-k_c, k_c),
color = "#0984E3",
linetype = "dashed",
linewidth = 1
) +
# ======================================================
# ETIQUETAS DE CURVAS
# ======================================================
annotate(
"text",
x = 3.2,
y = 0.12,
label = "Inciso A",
color = "#00B894",
size = 5,
fontface = "bold"
) +
annotate(
"text",
x = 3.2,
y = 0.09,
label = "Inciso B",
color = "#E17055",
size = 5,
fontface = "bold"
) +
annotate(
"text",
x = 3.2,
y = 0.06,
label = "Inciso C",
color = "#0984E3",
size = 5,
fontface = "bold"
) +
# ======================================================
# TÍTULOS
# ======================================================
labs(
title = "Distribución t de Student",
subtitle = "Curvas independientes para cada inciso",
x = "Valores t",
y = "Densidad"
) +
# ======================================================
# TEMA PROFESIONAL
# ======================================================
theme_minimal(base_size = 16) +
theme(
plot.title = element_text(
face = "bold",
size = 22,
hjust = 0.5
),
plot.subtitle = element_text(
size = 14,
hjust = 0.5,
color = "gray35"
),
axis.title = element_text(
face = "bold"
)
)# =========================================================
# TABLA DE RESULTADOS
# =========================================================
tabla_resultados <- data.frame(
Inciso = c(
"a",
"b",
"c"
),
Expresion = c(
"P(-1.725 < T < k) = 0.945",
"P(k < T < 2.415) = 0.085",
"P(-k < T < k) = 0.92"
),
Resultado_k = c(
round(k_a,4),
round(k_b,4),
round(k_c,4)
)
)
print(tabla_resultados) Inciso Expresion Resultado_k
1 a P(-1.725 < T < k) = 0.945 2.5909
2 b P(k < T < 2.415) = 0.085 1.3350
3 c P(-k < T < k) = 0.92 1.8142
La distribución F es una distribución de probabilidad continua utilizada principalmente para comparar varianzas entre dos poblaciones y en análisis estadísticos como ANOVA (Análisis de Varianza).
Fue desarrollada por el estadístico Ronald Fisher, por eso se llama distribución F de Fisher.
Características principales
Solo toma valores positivos.
Tiene forma asimétrica hacia la derecha.
Depende de dos grados de libertad:
v1v_1v1: grados de libertad del numerador
v2v_2v2: grados de libertad del denominador
¿Cuándo se utiliza?
La distribución F se usa principalmente para:
comparar varianzas,
análisis de varianza (ANOVA),
pruebas de hipótesis,
modelos de regresión.
Aplicaciones comunes
Verificar si dos poblaciones tienen varianzas iguales.
Comparar medias de varios grupos mediante ANOVA.
Evaluar modelos estadísticos.
Forma de la gráfica
# =========================================================
# DISTRIBUCIÓN F DE FISHER
# VALORES CRÍTICOS
# =========================================================
# Librería
library(ggplot2)
# =========================================================
# INCISO A
# f0.05 con v1 = 9 y v2 = 18
# =========================================================
alpha_a <- 0.05
v1_a <- 9
v2_a <- 18
f_a <- qf(
1 - alpha_a,
df1 = v1_a,
df2 = v2_a
)
cat("====================================\n")====================================
cat("INCISO A\n")INCISO A
cat("f0.05 =", round(f_a,4), "\n")f0.05 = 2.4563
cat("====================================\n\n")====================================
# =========================================================
# INCISO B
# f0.01 con v1 = 12 y v2 = 10
# =========================================================
alpha_b <- 0.01
v1_b <- 12
v2_b <- 10
f_b <- qf(
1 - alpha_b,
df1 = v1_b,
df2 = v2_b
)
cat("====================================\n")====================================
cat("INCISO B\n")INCISO B
cat("f0.01 =", round(f_b,4), "\n")f0.01 = 4.7059
cat("====================================\n\n")====================================
# =========================================================
# INCISO C
# f0.10 con v1 = 20 y v2 = 25
# =========================================================
alpha_c <- 0.10
v1_c <- 20
v2_c <- 25
f_c <- qf(
1 - alpha_c,
df1 = v1_c,
df2 = v2_c
)
cat("====================================\n")====================================
cat("INCISO C\n")INCISO C
cat("f0.10 =", round(f_c,4), "\n")f0.10 = 1.7175
cat("====================================\n\n")====================================
# =========================================================
# INCISO D
# f0.95 con v1 = 16 y v2 = 30
# =========================================================
alpha_d <- 0.95
v1_d <- 16
v2_d <- 30
f_d <- qf(
alpha_d,
df1 = v1_d,
df2 = v2_d
)
cat("====================================\n")====================================
cat("INCISO D\n")INCISO D
cat("f0.95 =", round(f_d,4), "\n")f0.95 = 1.9946
cat("====================================\n\n")====================================
# =========================================================
# INCISO E
# f0.99 con v1 = 35 y v2 = 14
# =========================================================
alpha_e <- 0.99
v1_e <- 35
v2_e <- 14
f_e <- qf(
alpha_e,
df1 = v1_e,
df2 = v2_e
)
cat("====================================\n")====================================
cat("INCISO E\n")INCISO E
cat("f0.99 =", round(f_e,4), "\n")f0.99 = 3.301
cat("====================================\n\n")====================================
# =========================================================
# DATOS PARA LAS CURVAS
# =========================================================
x <- seq(0, 8, by = 0.01)
# Curvas F
df_a <- data.frame(
x = x,
dens = df(x, v1_a, v2_a)
)
df_b <- data.frame(
x = x,
dens = df(x, v1_b, v2_b)
)
df_c <- data.frame(
x = x,
dens = df(x, v1_c, v2_c)
)
df_d <- data.frame(
x = x,
dens = df(x, v1_d, v2_d)
)
df_e <- data.frame(
x = x,
dens = df(x, v1_e, v2_e)
)
# =========================================================
# GRÁFICA COMBINADA
# =========================================================
ggplot() +
# ======================================================
# INCISO A
# ======================================================
geom_line(
data = df_a,
aes(x, dens),
color = "#00B894",
linewidth = 1.5
) +
geom_vline(
xintercept = f_a,
color = "#00B894",
linetype = "dashed"
) +
# ======================================================
# INCISO B
# ======================================================
geom_line(
data = df_b,
aes(x, dens),
color = "#E17055",
linewidth = 1.5
) +
geom_vline(
xintercept = f_b,
color = "#E17055",
linetype = "dashed"
) +
# ======================================================
# INCISO C
# ======================================================
geom_line(
data = df_c,
aes(x, dens),
color = "#0984E3",
linewidth = 1.5
) +
geom_vline(
xintercept = f_c,
color = "#0984E3",
linetype = "dashed"
) +
# ======================================================
# INCISO D
# ======================================================
geom_line(
data = df_d,
aes(x, dens),
color = "#6C5CE7",
linewidth = 1.5
) +
geom_vline(
xintercept = f_d,
color = "#6C5CE7",
linetype = "dashed"
) +
# ======================================================
# INCISO E
# ======================================================
geom_line(
data = df_e,
aes(x, dens),
color = "#D63031",
linewidth = 1.5
) +
geom_vline(
xintercept = f_e,
color = "#D63031",
linetype = "dashed"
) +
# ======================================================
# ETIQUETAS
# ======================================================
annotate(
"text",
x = 6,
y = 0.75,
label = "A",
color = "#00B894",
size = 6,
fontface = "bold"
) +
annotate(
"text",
x = 6,
y = 0.60,
label = "B",
color = "#E17055",
size = 6,
fontface = "bold"
) +
annotate(
"text",
x = 6,
y = 0.45,
label = "C",
color = "#0984E3",
size = 6,
fontface = "bold"
) +
annotate(
"text",
x = 6,
y = 0.30,
label = "D",
color = "#6C5CE7",
size = 6,
fontface = "bold"
) +
annotate(
"text",
x = 6,
y = 0.15,
label = "E",
color = "#D63031",
size = 6,
fontface = "bold"
) +
# ======================================================
# TÍTULOS
# ======================================================
labs(
title = "Distribución F de Fisher",
subtitle = "Curvas para los incisos A, B, C, D y E",
x = "Valores F",
y = "Densidad"
) +
# ======================================================
# TEMA
# ======================================================
theme_minimal(base_size = 16) +
theme(
plot.title = element_text(
face = "bold",
size = 22,
hjust = 0.5
),
plot.subtitle = element_text(
size = 14,
hjust = 0.5,
color = "gray35"
)
)# =========================================================
# TABLA DE RESULTADOS
# =========================================================
tabla_resultados <- data.frame(
Inciso = c(
"a",
"b",
"c",
"d",
"e"
),
Expresion = c(
"f0.05 (9,18)",
"f0.01 (12,10)",
"f0.10 (20,25)",
"f0.95 (16,30)",
"f0.99 (35,14)"
),
Resultado = c(
round(f_a,4),
round(f_b,4),
round(f_c,4),
round(f_d,4),
round(f_e,4)
)
)
print(tabla_resultados) Inciso Expresion Resultado
1 a f0.05 (9,18) 2.4563
2 b f0.01 (12,10) 4.7059
3 c f0.10 (20,25) 1.7175
4 d f0.95 (16,30) 1.9946
5 e f0.99 (35,14) 3.3010