Definición Formulación de suposiciones comprobables estadísticamente.
Ejemplo H₀ (Hipótesis Nula): Dormir más horas no mejora el rendimiento académico.
H₁ (Hipótesis Alternativa): Dormir más horas sí mejora el rendimiento académico.
# Datos simulados
horas_sueno <- c(5, 6, 7, 8, 9, 6, 7, 8)
rendimiento <- c(65, 70, 75, 80, 85, 68, 74, 82)
datos <- data.frame(horas_sueno, rendimiento)
# Visualización
plot(horas_sueno, rendimiento, pch = 19,
col = "darkgreen", main = "Relación Sueño vs Rendimiento",
xlab = "Horas de Sueño", ylab = "Rendimiento Académico")
Definición La correlación mide la relación entre dos variables cuantitativas. Se utiliza la prueba de Pearson si los datos son normales.
# Correlación de Pearson
cor.test(horas_sueno, rendimiento, method = "pearson")
##
## Pearson's product-moment correlation
##
## data: horas_sueno and rendimiento
## t = 16.479, df = 6, p-value = 3.183e-06
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
## 0.9388561 0.9981087
## sample estimates:
## cor
## 0.9891324
Interpretación:
El valor r indica fuerza y dirección de la relación.
El valor p indica si la relación es significativa (p < 0.05 es significativo).
Definición La prueba de Shapiro-Wilk evalúa si los datos siguen una distribución normal.
# Prueba de Shapiro-Wilk
shapiro.test(horas_sueno)
##
## Shapiro-Wilk normality test
##
## data: horas_sueno
## W = 0.96507, p-value = 0.8568
shapiro.test
## function (x)
## {
## DNAME <- deparse1(substitute(x))
## stopifnot(is.numeric(x))
## x <- sort(x[complete.cases(x)])
## n <- length(x)
## if (is.na(n) || n < 3L || n > 5000L)
## stop("sample size must be between 3 and 5000")
## rng <- x[n] - x[1L]
## if (rng == 0)
## stop("all 'x' values are identical")
## if (rng < 1e-10)
## x <- x/rng
## res <- .Call(C_SWilk, x)
## RVAL <- list(statistic = c(W = res[1]), p.value = res[2],
## method = "Shapiro-Wilk normality test", data.name = DNAME)
## class(RVAL) <- "htest"
## return(RVAL)
## }
## <bytecode: 0x000001577e535300>
## <environment: namespace:stats>
Interpretación:
Si p > 0.05, se considera que los datos son normales.
Decisión Datos normales → pruebas paramétricas.
Datos no normales → pruebas no paramétricas.
Definición Compara las medias de dos grupos cuando los datos tienen distribución normal.
grupo1 <- c(68, 70, 72, 75, 78)
grupo2 <- c(60, 62, 65, 67, 69)
# Ver normalidad
shapiro.test(grupo1)
##
## Shapiro-Wilk normality test
##
## data: grupo1
## W = 0.97583, p-value = 0.9112
shapiro.test
## function (x)
## {
## DNAME <- deparse1(substitute(x))
## stopifnot(is.numeric(x))
## x <- sort(x[complete.cases(x)])
## n <- length(x)
## if (is.na(n) || n < 3L || n > 5000L)
## stop("sample size must be between 3 and 5000")
## rng <- x[n] - x[1L]
## if (rng == 0)
## stop("all 'x' values are identical")
## if (rng < 1e-10)
## x <- x/rng
## res <- .Call(C_SWilk, x)
## RVAL <- list(statistic = c(W = res[1]), p.value = res[2],
## method = "Shapiro-Wilk normality test", data.name = DNAME)
## class(RVAL) <- "htest"
## return(RVAL)
## }
## <bytecode: 0x000001577e535300>
## <environment: namespace:stats>
# T-test para comparar medias
t.test(grupo1, grupo2)
##
## Welch Two Sample t-test
##
## data: grupo1 and grupo2
## t = 3.3161, df = 7.9414, p-value = 0.01071
## alternative hypothesis: true difference in means is not equal to 0
## 95 percent confidence interval:
## 2.429685 13.570315
## sample estimates:
## mean of x mean of y
## 72.6 64.6
Interpretación:
Si p < 0.05, hay diferencia estadísticamente significativa entre las medias de los grupos.
Definición Usada cuando los datos no son normales. Compara distribuciones en lugar de medias.
# Prueba de Wilcoxon (Mann-Whitney)
wilcox.test(grupo1, grupo2)
##
## Wilcoxon rank sum exact test
##
## data: grupo1 and grupo2
## W = 24, p-value = 0.01587
## alternative hypothesis: true location shift is not equal to 0
Interpretación:
Si p < 0.05, hay diferencias estadísticamente significativas entre los grupos.
Ejercicios
Formula una hipótesis sobre redes sociales y productividad.
Simula dos vectores y calcula su correlación con cor.test().
Verifica normalidad con shapiro.test() para una variable aleatoria.
Usa t.test() o wilcox.test() según corresponda.