Diplomado: MANEJO DE ECOSISTEMAS MARINOS COSTEROS DEL CARIBE
Programa: Biología — Universidad de La Guajira
Facultad: Ciencias Básicas y Aplicadas
Docente: Cristian Granados-Martínez PhD.
Este documento presenta el análisis estadístico de las tallas (estatura en metros) registradas para los estudiantes del diplomado, comparando los grupos de mujeres y hombres.
El análisis incluye:
# ── Tallas registradas (en metros) ───────────────────────────────────────────
# Nota: el dato "167" fue corregido a 1.67 (error tipográfico en la planilla)
mujeres <- c(1.60, 1.53, 1.55, 1.56, 1.86, 1.56, 1.50, 1.62,
1.56, 1.58, 1.67, 1.52, 1.56, 1.72, 1.55, 1.62,
1.60, 1.65, 1.60, 1.56)
hombres <- c(1.63, 1.80, 1.79, 1.78, 1.90, 1.69, 1.80, 1.85,
1.67, 1.67, 1.82, 1.67, 1.65)
# Organizar en un data.frame para el análisis
datos <- data.frame(
talla = c(mujeres, hombres),
sexo = c(rep("Mujeres", length(mujeres)),
rep("Hombres", length(hombres)))
)
# Convertir sexo a factor con orden definido
datos$sexo <- factor(datos$sexo, levels = c("Mujeres", "Hombres"))
# Vista previa
head(datos, 10)## Número de mujeres: 20
## Número de hombres: 13
## Total de estudiantes: 33
resumen <- datos |>
group_by(sexo) |>
summarise(
n = n(),
media = round(mean(talla), 3),
mediana = round(median(talla), 3),
desv_est = round(sd(talla), 3),
error_est = round(sd(talla) / sqrt(n()), 3),
minimo = round(min(talla), 2),
maximo = round(max(talla), 2),
rango = round(max(talla) - min(talla), 2),
CV_pct = round((sd(talla) / mean(talla)) * 100, 1)
)
resumenCV (%) = Coeficiente de Variación. Valores bajos indican que las tallas dentro del grupo son homogéneas.
# Cuartiles por grupo
datos |>
group_by(sexo) |>
summarise(
Q1 = quantile(talla, 0.25),
Q2_med = quantile(talla, 0.50),
Q3 = quantile(talla, 0.75),
IQR = IQR(talla)
)ggplot(datos, aes(x = sexo, y = talla, fill = sexo)) +
geom_boxplot(alpha = 0.55, outlier.shape = NA, width = 0.45) +
geom_jitter(aes(color = sexo), width = 0.12, size = 3, alpha = 0.75) +
stat_summary(fun = mean, geom = "point", shape = 23,
size = 4, fill = "white", color = "black") +
labs(
title = "Distribución de Tallas — Estudiantes del Diplomado",
subtitle = "El rombo blanco representa la media de cada grupo",
x = NULL,
y = "Talla (m)",
caption = paste0("n Mujeres = ", length(mujeres),
" | n Hombres = ", length(hombres))
) +
scale_fill_manual(values = c("Mujeres" = "#E07B8A", "Hombres" = "#4E9BB9")) +
scale_color_manual(values = c("Mujeres" = "#C0415A", "Hombres" = "#1F6E8C")) +
scale_y_continuous(breaks = seq(1.45, 1.95, by = 0.05),
labels = scales::number_format(accuracy = 0.01)) +
theme_classic(base_size = 13) +
theme(legend.position = "none")Distribución de tallas por sexo. Cada punto representa un estudiante.
ggplot(datos, aes(x = talla, fill = sexo)) +
geom_histogram(binwidth = 0.04, color = "white", alpha = 0.85) +
geom_vline(data = resumen, aes(xintercept = media, color = sexo),
linewidth = 1.2, linetype = "dashed") +
facet_wrap(~ sexo, ncol = 1) +
labs(
title = "Histograma de Tallas por Sexo",
subtitle = "La línea punteada indica la media del grupo",
x = "Talla (m)",
y = "Número de estudiantes"
) +
scale_fill_manual(values = c("Mujeres" = "#E07B8A", "Hombres" = "#4E9BB9")) +
scale_color_manual(values = c("Mujeres" = "#C0415A", "Hombres" = "#1F6E8C")) +
scale_x_continuous(breaks = seq(1.45, 1.95, by = 0.05)) +
theme_bw(base_size = 13) +
theme(legend.position = "none")Distribución de frecuencias de tallas por sexo.
ggplot(datos, aes(x = sexo, y = talla, color = sexo)) +
stat_summary(fun.data = mean_ci, geom = "errorbar",
width = 0.15, linewidth = 1.0) +
stat_summary(fun = mean, geom = "point", size = 5) +
stat_summary(fun = mean, geom = "line", aes(group = 1),
linewidth = 0.8, linetype = "dashed", color = "gray50") +
labs(
title = "Media e Intervalo de Confianza al 95%",
subtitle = "Tallas de estudiantes del diplomado",
x = NULL,
y = "Talla (m)"
) +
scale_color_manual(values = c("Mujeres" = "#C0415A", "Hombres" = "#1F6E8C")) +
scale_y_continuous(limits = c(1.55, 1.85),
breaks = seq(1.55, 1.85, by = 0.05)) +
theme_classic(base_size = 13) +
theme(legend.position = "none")Media ± intervalo de confianza al 95% de las tallas por sexo.
Antes de aplicar la prueba t, verificamos que se cumplen los supuestos estadísticos necesarios.
H₀: Los datos siguen una distribución normal
Si p > 0.05 → no se rechaza la normalidad ✔
Con base en los resultados de los supuestos, aplicamos la prueba t para muestras independientes.
Pregunta: ¿Existe una diferencia estadísticamente significativa en la talla promedio entre mujeres y hombres del diplomado?
resultado_t <- t.test(talla ~ sexo,
data = datos,
var.equal = TRUE) # ajustar a FALSE si Levene p < 0.05
resultado_t##
## Two Sample t-test
##
## data: talla by sexo
## t = -5.0066, df = 31, p-value = 2.108e-05
## alternative hypothesis: true difference in means between group Mujeres and group Hombres is not equal to 0
## 95 percent confidence interval:
## -0.20996823 -0.08841639
## sample estimates:
## mean in group Mujeres mean in group Hombres
## 1.598500 1.747692
El tamaño del efecto indica la magnitud práctica de la diferencia, independientemente del tamaño de muestra.
| Valor de d | Interpretación |
|---|---|
| 0.2 | Efecto pequeño |
| 0.5 | Efecto mediano |
| 0.8 | Efecto grande |
ggplot(datos, aes(x = sexo, y = talla, fill = sexo)) +
geom_boxplot(alpha = 0.55, outlier.shape = NA, width = 0.45) +
geom_jitter(aes(color = sexo), width = 0.12, size = 3, alpha = 0.7) +
stat_compare_means(
method = "t.test",
label = "p.format",
label.x = 1.35,
label.y = 1.93,
size = 4.5
) +
stat_summary(fun = mean, geom = "point", shape = 23,
size = 4, fill = "white", color = "black") +
labs(
title = "Tallas de Estudiantes — Mujeres vs. Hombres",
subtitle = "Prueba t de Student para muestras independientes",
x = NULL,
y = "Talla (m)",
caption = paste0("n Mujeres = ", length(mujeres),
" | n Hombres = ", length(hombres))
) +
scale_fill_manual(values = c("Mujeres" = "#E07B8A", "Hombres" = "#4E9BB9")) +
scale_color_manual(values = c("Mujeres" = "#C0415A", "Hombres" = "#1F6E8C")) +
scale_y_continuous(breaks = seq(1.45, 1.95, by = 0.05)) +
theme_classic(base_size = 13) +
theme(legend.position = "none")Comparación de tallas entre mujeres y hombres con resultado de la prueba t.
p_valor <- resultado_t$p.value
media_M <- round(mean(mujeres), 3)
media_H <- round(mean(hombres), 3)
diferencia <- round(media_H - media_M, 3)
cat("══════════════════════════════════════════════════\n")## ══════════════════════════════════════════════════
## RESUMEN DEL ANÁLISIS DE TALLAS
## ══════════════════════════════════════════════════
## Talla media Mujeres: 1.598 m (n = 20)
## Talla media Hombres: 1.748 m (n = 13)
## Diferencia de medias: 0.150 m
## Valor p (prueba t): 0.0000
if (p_valor < 0.05) {
cat("\n CONCLUSIÓN: La diferencia de tallas entre mujeres\n")
cat(" y hombres es ESTADÍSTICAMENTE SIGNIFICATIVA\n")
cat(" (p < 0.05). Los hombres presentan una talla\n")
cat(sprintf(" promedio %.1f cm mayor que las mujeres.\n",
diferencia * 100))
} else {
cat("\n CONCLUSIÓN: No existe diferencia estadísticamente\n")
cat(" significativa entre las tallas de mujeres y hombres\n")
cat(" (p ≥ 0.05).\n")
}##
## CONCLUSIÓN: La diferencia de tallas entre mujeres
## y hombres es ESTADÍSTICAMENTE SIGNIFICATIVA
## (p < 0.05). Los hombres presentan una talla
## promedio 15.0 cm mayor que las mujeres.
## ══════════════════════════════════════════════════
Con base en los datos de los 33 estudiantes del diplomado (mujeres: n = 20, hombres: n = 13), el análisis estadístico permite concluir:
La talla promedio de las mujeres fue de 1.6 m (DE = 0.081 m), mientras que la de los hombres fue de 1.75 m (DE = 0.088 m).
La prueba de Shapiro-Wilk confirmó que ambos grupos presentan una distribución normal de los datos (p > 0.05), y la prueba de Levene indicó homogeneidad de varianzas entre los grupos.
La prueba t de Student para muestras independientes reveló una diferencia estadísticamente significativa entre las tallas de mujeres y hombres (t = -5.007, gl = 31, p = 0).