Pruebas de hipótesis con una muestra

Hipótesis de dos colas sobre la media

Vamos a poner en práctica los conceptos de hipótesis nula y alterna, y una prueba para evaluar si aceptamos o rechazamos la hipótesis nula.

Tenemos la temperatura de 25 cangrejos que colocamos en una cámara, a una temperatura controlada de 24.3 ºC; queremos saber si la temperatura de estos cangrejos es la misma que la del ambiente (poiquilotermos), o tienen alguna desviación significativa (mayor o menor). Entonces las hipótesis serían:

\[H_0:\ \mu=\mu_0\] \[H_A:\ \mu\neq\mu_0\]

  • Anteriormente utilizamos \(Z\) como estadístico para medir desviación de la normal y determinar la probabilidad de obtener cierto valor de una población con media \(\mu\).

  • En este caso queremos saber si la media \(\bar X\) de la muestra de cangrejos, es diferente de un valor que en teoría sería la media poblacional (\(\mu\))

  • Sin embargo, para usar \(Z\) debemos tener la desviación estándar de la media poblacional (\(\sigma_{\bar X}\)), o un buen estimador, como \(s_{\bar X}\) para una muestra muy grande.

  • Usualmente en los estudios biológicos (y ecológicos) no tenemos muestras muy grandes; la alternativa es usar una distribución que se ajusta al tamaño de la muestra y que cuando \(n=\infty\) sea igual a la normal.

  • La distribución t de Student es la usualmente utilizada para hipótesis sobre la media, y la media de la muestra se transforma:

\[t=\frac {\bar X - \mu}{s_{\bar X}}\]

  • Para obtener el valor de t teórico para un nivel de probabilidad, se utilizan los grados de libertad (\(\nu\)) de la muestra:

\[\nu=n-1\]


Vamos ahora a ver los cálculos para la prueba de hipótesis:

#datos
load("HipOneSamp.Rdata")
crabs
##  [1] 25.8 24.6 26.1 22.9 25.1 27.3 24.0 24.5 23.9 26.2 24.3 24.6 23.3 25.5
## [15] 28.1 24.8 23.5 26.3 25.4 25.5 23.9 27.0 24.8 22.9 25.4
#estadísticos
n <- length(crabs) #tamaño de la muestra
n
## [1] 25
m <- mean(crabs)   #media
m
## [1] 25.028
s2 <- var(crabs)   #varianza
s2
## [1] 1.800433
s <- sd(crabs)     #desviación estándar
s
## [1] 1.341802
se <- s/sqrt(n)    #error estándar de la muestra
se
## [1] 0.2683605
m0 <- 24.3         #temperatura del ambiente
gl <- length(crabs) - 1   #grados de libertad
gl
## [1] 24
#estadístico t y prueba de hipótesis
t = (m-m0)/se   #estadístico t de la muestra
t
## [1] 2.712769
abs(qt(0.05/2, 24))  #valor crítico t para alpha 0.05 2 colas y gl
## [1] 2.063899
alpha <- 1-pt(2.71, 24)  #alpha calculado con t muestra
alpha
## [1] 0.006111508

En conclusión: rechazamos la hipótesis nula, por tanto, la muestra de 25 cangrejos representa una población cuya media no es la de la población hipotética (\(\mu=24.3\ ºC\))

Hipótesis de dos colas para la diferencia entre la media de una muestra y una media poblacional hipotética de cero

En este caso tenemos el cambio en masa (g) de doce ratas que estuvieron sujetas a ejercicio forzado. El cambio en masa es la diferencia entre el peso final y el peso inicial. Las hipótesis planteados son:

\[H_0:\ \mu=0\] \[H_A:\ \mu\neq0\]

#datos
load("HipOneSamp.Rdata")
ratas
##  [1]  1.7  0.7 -0.4 -1.8  0.2  0.9 -1.2 -0.9 -1.8 -1.4 -1.8 -2.0
#estadísticos
n <- length(ratas) #tamaño de la muestra
n
## [1] 12
m <- mean(ratas)   #media
m
## [1] -0.65
s2 <- var(ratas)   #varianza
s2
## [1] 1.568182
s <- sd(ratas)     #desviación estándar
s
## [1] 1.252271
se <- s/sqrt(n)    #error estándar de la media
se
## [1] 0.3614994
m0 <- 0            #media población teórica
gl <- length(ratas) - 1   #grados de libertad
gl
## [1] 11
#estadístico t y prueba de hipótesis
t = (m-m0)/se   #t de la muestra
abs(t)
## [1] 1.798067
abs(qt(0.05/2, 11))  #valor crítico t para alpha 0.05 2 colas y gl
## [1] 2.200985
alpha <- 1-pt(1.798, 11) #alpha calculado con t muestra
alpha
## [1] 0.04982392

En este caso tenemos que concluir que el ejercicio no causó un cambio significativo en el peso de las ratas (aceptamos la \(H_0\)).

Hipótesis de una cola para la media de una muestra

Vamos a considerar el caso en que la investigadora espera un resultado en una dirección, con respecto a la hipótesis nula. Se trata de una prueba en un grupo de personas, de una droga desarrollada para producir pérdida de peso. Un resultado negativo, contrario a lo esperado, sería que la droga no produjera pérdida de peso o produjera un aumento, por lo tanto la investigadora, sobre la base de estudios previos y teóricos, espera que el resultado sea la pérdida de peso, y la prueba sería entonces de una dirección (una cola).

\[H_0:\ \mu \geq 0\] \[H_A:\ \mu<0\]

#datos
load("HipOneSamp.Rdata")
humanos
##  [1]  0.2 -0.5 -1.3 -1.6 -0.7  0.4 -0.1  0.0 -0.6 -1.1 -1.2 -0.8
#estadísticos
n <- length(humanos) #tamaño de la muestra
n
## [1] 12
m <- mean(humanos)   #media
m
## [1] -0.6083333
s2 <- var(humanos)   #varianza
s2
## [1] 0.4008333
s <- sd(humanos)     #desviación estándar
s
## [1] 0.633114
se <- s/sqrt(n)    #error estándar de la media
se
## [1] 0.1827643
m0 <- 0            #media población teórica
gl <- length(humanos) - 1   #grados de libertad
gl
## [1] 11
#estadístico t y prueba de hipótesis
t = (m-m0)/se   #t de la muestra
t
## [1] -3.328513
qt(0.05, 11)  #valor crítico t para alpha 0.05 2 colas y gl
## [1] -1.795885
alpha <- pt(-3.329, 11) #alpha calculado con t muestra
alpha
## [1] 0.00336158

En conclusión:

Intervalo de confianza de la media

El 95 % de los valores de medias muestrales de una población con distribución normal, con media \(\mu\), se encuentran dentro de los límites de sus valores críticos de \(t\), esto es:

\[P[-t_{0.05(2),\nu} \leq \frac {\bar X - \mu}{s_{\bar X}} \leq t_{0.05(2),\nu}] = 0.95\]

de allí podemos rearreglar y tenemos:

\[P[\bar X - t_{0.05(2),\nu} s_{\bar X}\leq \mu \leq \bar X + t_{0.05(2),\nu} s_{\bar X}] = 0.95\]

De forma general podemos escribir:

\[P[\bar X - t_{\alpha(2),\nu} s_{\bar X}\leq \mu \leq \bar X + t_{\alpha(2),\nu} s_{\bar X}] = 1-\alpha\]

Finalmente, el intervalo de confianza para un nivel \(\alpha\), será:

\[\bar X \pm t_{\alpha(2),\nu} s_{\bar X}\]


Con los datos de los cangrejos y usando R podemos calcular directamente los valores del intervalo de confianza, para un \(\alpha\) dado:

m <- mean(crabs)
s <- sd(crabs)
n <- length(crabs)
#intervalo de confianza para alfa = 0.05 (int. conf. de 95 %)
error <- qt(0.975,df=n-1)*s/sqrt(n) #el valor de alfa se divide para cada lado
left <- m-error
right <- m+error
left
## [1] 24.47413
right
## [1] 25.58187
#intervalo de confianza para alfa = 0.01 (int. conf. de 99 %)
error <- qt(0.995,df=n-1)*s/sqrt(n) #el valor de alfa se divide para cada lado
left <- m-error
right <- m+error
left
## [1] 24.27741
right
## [1] 25.77859
#usando función t.test
t.test(crabs, conf.level = 0.95)
## 
##  One Sample t-test
## 
## data:  crabs
## t = 93.263, df = 24, p-value < 2.2e-16
## alternative hypothesis: true mean is not equal to 0
## 95 percent confidence interval:
##  24.47413 25.58187
## sample estimates:
## mean of x 
##    25.028
t.test(crabs, conf.level = 0.99)
## 
##  One Sample t-test
## 
## data:  crabs
## t = 93.263, df = 24, p-value < 2.2e-16
## alternative hypothesis: true mean is not equal to 0
## 99 percent confidence interval:
##  24.27741 25.77859
## sample estimates:
## mean of x 
##    25.028

Prueba de hipótesis para la varianza

  • Como vimos anteriormente, las pruebas para las medias de una población se trabajan con la distribución t de Student, la cual se aproxima a la distribución normal, siendo ambas simétricas.

  • Sin embargo, la teoría establece que la distribución de las varianzas de las muestras no posee una distribución normal, ni es simétrica.

  • La alternativa es usar la distribución chi-cuadrado (o ji-cuadrado):

\[\chi^2 = \frac {\nu s^2}{\sigma^2}\]


  • Para una muestra, podemos comparar la varianza de la muestra con una varianza teórica, esperada para la población. Usualmente la prueba es de una sola cola. Las hipótesis serían de la siguiente forma:

\[H_0 = \sigma^2 \geq \sigma_0{^2} \quad ó \quad \sigma^2 \leq \sigma_0{^2}\] \[H_A = \sigma^2 < \sigma_0{^2} \quad ó \quad \sigma^2 > \sigma_0{^2}\]

Utilizaremos los datos de cangrejos para probar si la varianza de la muestra es mayor de 1.5 \(ºC^2\):

#estadísticos
gl <- length(crabs)-1
gl
## [1] 24
varm <- var(crabs)
varm
## [1] 1.800433
vart = 1.5
#chi cuadrado muestra y teórico
chi2 <- (gl*varm)/vart
chi2
## [1] 28.80693
qchisq(0.95, gl)
## [1] 36.41503
#usando prueba de varianza
library(EnvStats)
## 
## Attaching package: 'EnvStats'
## The following objects are masked from 'package:stats':
## 
##     predict, predict.lm
## The following object is masked from 'package:base':
## 
##     print.default
varTest(crabs, #vector con datos
        alternative="greater", #hipótesis alterna
        conf.level = 0.95, #probabilidad
        sigma.squared = 1.5) #varianza teórica
## 
##  Chi-Squared Test on Variance
## 
## data:  crabs
## Chi-Squared = 28.807, df = 24, p-value = 0.2275
## alternative hypothesis: true variance is greater than 1.5
## 95 percent confidence interval:
##  1.186609      Inf
## sample estimates:
## variance 
## 1.800433

Conclusión: El estadístico chi-cuadrado de la muestra resultó menor que el teórico, y la p (error tipo I) resultó mayor de 0.05, por lo tanto nuestra hipótesis alterna (\(H_0 : \sigma^2 > \sigma_0{^2}\)) no es aceptable, al no poder rechazar la hipótesis nula.