1 Fórmulas básicas en R Markdown para contrastes de hipótesis.

Aquí tenéis unas plantillas ejemplo para escribir los contrastes de hipótesis.

En la misma línea que el texto.

Con el modo de fórmulas entre líneas

Código: Vamos a realizar el siguiente contraste

$$
\left\{
\begin{array}{ll}
H_{0}: &  \mu=\mu_0\\
H_{1}: & \mu\neq\mu_0
\end{array}
\right.
$$

Salida:

Vamos a realizar el siguiente contraste

\[ \left\{ \begin{array}{ll} H_{0}: & \mu=\mu_0\\ H_{1}: & \mu\neq\mu_0 \end{array} \right. \]

2 Ejemplos de resolución de contrastes de una muestra.

2.1 Ejemplo de resolución de un contraste de hipótesis con funciones de R comentadas.

Vemos un primer ejemplo en el que mostraemos tanto las fórmulas como las funciones de R.

3 Contraste nivel de colesterol en enfermos.

Se espera que el nivel de colesterol en plasma de unos enfermos sometidos a un determinado tratamiento se distribuye según una ley normal de media 220 mg/dl Se toma una muestra de 9 enfermos, y se miden sus niveles de colesterol. Los resultado fueron:

203, 229, 215, 220, 223, 233, 208, 228, 209

Contrastar la hipótesis de que esta muestra proviene de una población con media 220 mg/dl.

Solución Sea \(X\) la variable que da el valor de colesterol en plasma en individuo escogido al azar de la población de enfermos. El problema postula que la distribución de \(X\) sigue una ley normal de media \(\mu_0=220\).

Se toma una muestra de tamaño 9. Introduzcamos los resultados en R

colesterol=c(203,229,215,220,223,233,208, 228, 209)
colesterol
## [1] 203 229 215 220 223 233 208 228 209
mean(colesterol)
## [1] 218.6667
sd(colesterol)
## [1] 10.52378
mu0=220
mu0
## [1] 220

Denotemos por \(\mu\) la media real (desconocida) de la población de enfermos nos poden que realicemos el contraste:

\[ \left\{ \begin{array}{ll} H_{0}: & \mu=\mu_0\\ H_{1}: & \mu\neq\mu_0 \end{array} \right. \]

Bajo estas condiciones (población normal, desviación típica poblacional \(\sigma\) desconocida y muestra pequeña de tamaño \(n=9\)) utilizamos como estadístico de contraste es

\[ T= \frac{\overline{X}-\mu_{0}}{{\tilde{S}_X}/{\sqrt{n}}} \]

El test a aplicar es un \(t\)-test que se puede resolver con la función t.test.

sol.test=t.test(colesterol,mu=220,alternative="two.sided",conf.level=0.95)
#Resumen del test
sol.test
## 
##  One Sample t-test
## 
## data:  colesterol
## t = -0.3801, df = 8, p-value = 0.7138
## alternative hypothesis: true mean is not equal to 220
## 95 percent confidence interval:
##  210.5774 226.7560
## sample estimates:
## mean of x 
##  218.6667
#Valor del estadístico de contraste
sol.test$statistic
##          t 
## -0.3800915
#p-valor
sol.test$p.value
## [1] 0.71377
#intervalo de confianza entremos izquierdo y derecho
sol.test$conf.int[1]
## [1] 210.5774
sol.test$conf.int[2]
## [1] 226.756
#nivel de confianza
attr(sol.test$conf.int,"conf.level")
## [1] 0.95

Informe final:

El \(p\)-valor del contraste es 0.71377, y el intervalo de confianza del 95% para el nivel medio de colesterol \(\mu\) es \[[210.5773713, 226.7559621].\]

No hay evidencia que nos permita rechazar la hipótesis nula \(H_0:\mu = 220\) contra la alternativa \(H_1:\mu\neq 220\).

4 Ejemplo de resolución de un constraste de hipótesis haciendo los cálculos de forma directa con R. enfermos.

Se espera que el nivel de colesterol en plasma de unos enfermos sometidos a un determinado tratamiento se distribuya según una ley normal de media 220 mg/dl Se toma una muestra de 9 enfermos, y se miden sus niveles de colesterol. Los resultado fueron:

203, 229, 215, 220, 223, 233, 208, 228, 209

Contrastar la hipótesis de que esta muestra proviene de una población con media 220 mg/dl.

Solución

Sea \(X\) la variable que da el valor de colesterol en plasma en individuo escogido al azar de la población de enfermos. El problema postula que la distribución de \(X\) sigue una ley normal de media \(\mu_0=220\). Se toma la muestra que se indica en el enunciado.

Denotemos por \(\mu\) la media real (desconocida) de la población de enfermos nos piden que realicemos el contraste:

\[ \left\{ \begin{array}{ll} H_{0}: & \mu= 220\\ H_{1}: & \mu\neq 220 \end{array} \right. \]

Bajo estas condiciones (población normal, varianza poblacional \(\sigma_{X}^{2}\) desconocida y muestra pequeña de tamaño \(n= 9 \)) el test que aplicaremos será un \(t\)-test que tiene como estadístico de contraste

\[ T= \frac{\overline{X}-\mu_{0}}{{\tilde{S}_X}/{\sqrt{n}}} \]

Tenemos que la media \(\overline{X}=\) 218.6666667, la desviación típica \(\tilde{S}_X=\) 10.5237826 y el tamaño de la muestra es \(n=\) 9. Así que el valor del estadístico de contraste es

\[t_0= \frac{ 218.6666667- 220}{ 10.5237826/\sqrt{ 9}} = -0.3800915 \]

El \(p\)-valor de este test para la hipótesis alternativa bilateral es

\[p-\mbox{valor}=2\cdot P\left(t_{ 8} \geq |-0.3800915|\right)= 2 P\left(t_{ 8} \geq 0.3800915|\right)=0.71377.\] El intervalo de confianza al nivel \(1-\alpha= 0.95\) es

\[ \left[\overline{X} -t_{n-1,1-\frac{\alpha}{2}} \frac{\tilde{S}_{X}}{\sqrt{n}}, \overline{X}+t_{n-1,1-\frac{\alpha}{2}}\frac{\tilde{S}_{X}}{\sqrt{n}} \right]= [210.5773713, 226.7559621]. \]

Informe final: El \(p\)-valor del contraste es 0.71377, y el intervalo de confianza del 95% para el nivel medio de colesterol \(\mu\) es \[[210.5773713, 226.7559621].\]

No hay evidencia que nos permita rechazar la hipótesis nula que \(\mu = 220\).

Para resolverlo directamente con R basta con utilizar la función t.test

t.test(colesterol,mu=220,alternative="two.sided",conf.level=0.95)
## 
##  One Sample t-test
## 
## data:  colesterol
## t = -0.3801, df = 8, p-value = 0.7138
## alternative hypothesis: true mean is not equal to 220
## 95 percent confidence interval:
##  210.5774 226.7560
## sample estimates:
## mean of x 
##  218.6667

Como se observa obtenemos los mismos resultados.

5 Ejemplo de informe final: contraste del nivel de colesterol en enfermos.

Se espera que el nivel de colesterol en plasma de unos enfermos sometidos a un determinado tratamiento se distribuya según una ley normal de media 220 mg/dl. Se toma una muestra de 9 enfermos, y se miden sus niveles de colesterol. Los resultados fueron:

203, 229, 215, 220, 223, 233, 208, 228, 209

Contrastar la hipótesis de que esta muestra proviene de una población con media 220 mg/dl.

Solución

Denotemos por \(\mu\) la media de la población de enfermos y resolvemos el contraste

\[ \left\{ \begin{array}{ll} H_{0}: & \mu= 220\\ H_{1}: & \mu\neq 220 \end{array} \right. \]

Utilizamos R para hacer un test \(t\) de Student obteniendose que un intervalo de confianza del 95% para \(\mu\) es \([210.5773713, 226.7559621]\) y un \(p\)-valor de 0.71377.

Informe final: El \(p\)-valor del contraste es 0.71377, y el intervalo de confianza del 95% para el nivel medio de colesterol \(\mu\) es \([210.5773713, 226.7559621]\). No hay evidencia que nos permita rechazar la hipótesis nula de que \(\mu = 220\) contra la altenativa \(\mu\neq 220\).

6 Ejemplos resolución contrastes de dos muestras

Ahora varios ejemplos de contrastes de dos muestras para medias, varianzas y proporciones.

6.1 Ejemplos R markdown para test básicos de medias y varianzas de dos muestras independientes.

Cuando comparamos el valor medio, la varianza o la proporción de una misma variable \(X\) entre dos muestras independientes disponemos de dos variables, la propia \(X\) y la variable/factor que nos indica la procedencia de la muestra. Así que la estructura básica debería ser un data frame con una columna en la que dispondremos los valores de la variable de interés y otra columna de tipo factor (aunque no es estrictamente necesario) con dos niveles que determinan las condiciones de cada una de las dos muestras. Las muestras son independientes pues los individuos han sido seleccionados y asignados a cada uno de los niveles de forma aleatoria.

La estructura de datos para poder realizar un test de comparación de medias, varianzas o proporciones, más adecuado es entonces un data frame. Aunque en ocasiones se recurre a dos arrays uno de tipo número \(X\) y otro de tipo factor con dos niveles que nos indica la muestra de cada observación.

En ocasiones también pueden venir en dos variables contenidas en un data frame o no, que contienen los valores de la variable \(X\) en cada una de las dos muestras.

7 Ejemplo

Queremos comparar los tiempos de realización de un test entre estudiantes de dos grados G1 y G2, y determinar si es verdad que los estudiantes de G1 emplean menos tiempo que los de G2. No conocemos \(\sigma_1\) y \(\sigma_2\). Disponemos de dos muestras independientes de tests realizados por estudiantes de cada grado, \(n_1=n_2=40\).

Los datos están en http://bioinfo.uib.es/~recerca/MAT2/NotasTestGrado/, en dos ficheros grado1.txt y grado2.txt.

Calculamos las medias y las desviaciones típicas muestrales de los tiempos empleados para cada muestra.

Los datos obtenidos se resumen en la siguiente tabla:

\[ \begin{array}{llll} n_1&=40, & n_2&=40\\ \overline{x}_1&=9.7892076, & \overline{x}_2&=11.3848297\\ \tilde{s}_1&=1.2011633, & \tilde{s}_1&=1.5787924 \end{array} \]

8 Contrastes igualdad de medias.

Representaremos por \(\mu_1\), \(\mu_2\), \(\sigma_1^2\) y \(\sigma_2^2\) las medias y varianzas poblacionales de las notas en cada una de las poblaciones, G1 y G2, respectivamente.

Queremos contrastar si la medias de las notas son iguales en los dos grados contra que son distintas. Formalmente el contraste que se pide es

\[ \left\{ \begin{array}{ll} H_0: & \mu_1=\mu_2\\ H_0: & \mu_1\not=\mu_2 \end{array} \right. \]

Bajo estas condiciones \(n_1\) y \(n_2\) grandes varianzas poblacionales desconocidas podemos utilizar un \(t\)-test, en dos versiones: varianzas desconocidas y distintas o varianzas desconocidas e iguales.

Como aún no hemos contrastado la igualdad de varianzas entre las dos muestras calcularemos los dos contrastes en ambos supuestos. El código es

sol.ttest.vareq=t.test(G1,G2,alternative="two.side",var.equal=TRUE,conf.level=0.95)
sol.ttest.vareq
## 
##  Two Sample t-test
## 
## data:  G1 and G2
## t = -5.0871, df = 78, p-value = 2.446e-06
## alternative hypothesis: true difference in means is not equal to 0
## 95 percent confidence interval:
##  -2.2200772 -0.9711671
## sample estimates:
## mean of x mean of y 
##  9.789208 11.384830
sol.ttest.varneq=t.test(G1,G2,alternative="two.side",var.equal=FALSE,conf.level=0.95)
sol.ttest.varneq
## 
##  Welch Two Sample t-test
## 
## data:  G1 and G2
## t = -5.0871, df = 72.818, p-value = 2.734e-06
## alternative hypothesis: true difference in means is not equal to 0
## 95 percent confidence interval:
##  -2.2207778 -0.9704664
## sample estimates:
## mean of x mean of y 
##  9.789208 11.384830

Como siempre se pueden recuperar los estadísticos, \(p\)-valores e intervalos de confianza de cada test

sol.ttest.vareq$statistic
##         t 
## -5.087059
sol.ttest.vareq$p.value
## [1] 2.446014e-06
sol.ttest.vareq$conf.int
## [1] -2.2200772 -0.9711671
## attr(,"conf.level")
## [1] 0.95
sol.ttest.varneq$statistic
##         t 
## -5.087059
sol.ttest.varneq$p.value
## [1] 2.733534e-06
sol.ttest.varneq$conf.int
## [1] -2.2207778 -0.9704664
## attr(,"conf.level")
## [1] 0.95

Conclusiones:

Los \(p\)-valores de ambos contrastes \(2.4460137\times 10^{-6}\) y \(2.7335343\times 10^{-6}\) son extremadamente pequeños y los intervalos de confianza del 95% para la diferencia de medias \[ ]-2.2200772, -0.9711671[\mbox{ y } ]-2.2207778, -0.9704664[ \] no contienen al cero.

Tenemos evidencias para rechazar la hipótesis de que las medias de las notas de los dos grupos son iguales contra que son distintas. Es decir, los dos grupos no tienen notas medias iguales.

9 Contraste para la igualdad de varianzas

Nos había quedado pendiente comprobar la igualdad de varianzas entre las notas de los dos grupos. Hay dos test básicos para esto: el de de Fisher de la razón de varianzas y el test de Levene (que no hemos visto en teoría de dos muestras pero sí utilizaremos en el tema de comparación de varias muestras ANOVA).

El test contrasta si las varianzas poblacionales de dos muestras independientes, \(\sigma_1^2\) y \(\sigma_2^2\), tienen la misma varianza contra que la tienen distinta.

\[ \left\{ \begin{array}{ll} H_0: & \sigma_1^2=\sigma_2^2\\ H_0: & \sigma_1^2\not=\sigma_2^2 \end{array} \right. \]

Notemos que el test de igualdad de varianzas de Fisher en realidad es un test de razones en el sentido que lo que se contrasta realmente es

\[ \left\{ \begin{array}{ll} H_0: & \frac{\sigma_1^2}{\sigma_2^2}=1\\ H_0: & \frac{\sigma_1^2}{\sigma_2^2}\neq 1 \end{array} \right. \]

Las conclusiones que podemos extraer de las discusiones de los dos test son similares, pero hay que tener en cuenta que realmente es un test de razones. Sobre todo al analizar los intervalos de confianza son para la razón de las varianzas y en caso de igualdad de varianzas deben de contener el \(1\).

El código es el siguiente

sol.var.test=var.test(G1,G2,ratio=1,alternative="two.sided",conf.level=0.95)
sol.var.test
## 
##  F test to compare two variances
## 
## data:  G1 and G2
## F = 0.5788, num df = 39, denom df = 39, p-value = 0.0918
## alternative hypothesis: true ratio of variances is not equal to 1
## 95 percent confidence interval:
##  0.3061449 1.0944125
## sample estimates:
## ratio of variances 
##           0.578834
sol.var.test$statistic
##        F 
## 0.578834
sol.var.test$p.value
## [1] 0.09180277
sol.var.test$conf.int
## [1] 0.3061449 1.0944125
## attr(,"conf.level")
## [1] 0.95

Como el \(p\)-valor es 0.0918028 y es mayor que \(0.05\) no podemos rechazar la hipótesis nula de que la varianzas son iguales contra que son distintas.

Por último hagamos el contraste de medias completo. Calcularemos las dos versiones del \(t\)-test y también el test de igualdad de varianzas, también dibujaremos un diagrama de caja de las distribución de la nota en las dos muestras

boxplot(G1,G2,main="Diagrama de caja de la nota\n en los dos grados.",names=c("Grado 1","Grado 2"))

t.test(G1,G2,alternative="two.side",var.equal=TRUE,conf.level=0.95)
## 
##  Two Sample t-test
## 
## data:  G1 and G2
## t = -5.0871, df = 78, p-value = 2.446e-06
## alternative hypothesis: true difference in means is not equal to 0
## 95 percent confidence interval:
##  -2.2200772 -0.9711671
## sample estimates:
## mean of x mean of y 
##  9.789208 11.384830
t.test(G1,G2,alternative="two.side",var.equal=FALSE,conf.level=0.95)
## 
##  Welch Two Sample t-test
## 
## data:  G1 and G2
## t = -5.0871, df = 72.818, p-value = 2.734e-06
## alternative hypothesis: true difference in means is not equal to 0
## 95 percent confidence interval:
##  -2.2207778 -0.9704664
## sample estimates:
## mean of x mean of y 
##  9.789208 11.384830
var.test(G1,G2,ratio=1,alternative="two.sided",conf.level=0.95)
## 
##  F test to compare two variances
## 
## data:  G1 and G2
## F = 0.5788, num df = 39, denom df = 39, p-value = 0.0918
## alternative hypothesis: true ratio of variances is not equal to 1
## 95 percent confidence interval:
##  0.3061449 1.0944125
## sample estimates:
## ratio of variances 
##           0.578834

En el diagrama de caja ya se observa que la media de las notas de G2 es sensiblemente más grande y que no podemos descartar que las varianzas sean iguales pues los tamaños de los bigotes y cajas son bastante parecidos.

Aceptamos que las varianzas son iguales en las dos muestras. El test de igualdad para las medias de las notas, suponiendo varianzas iguales, tiene un \(p\)-valor \(2.4460137\times 10^{-6}\) bajo por lo que rechazamos la igualdad de medias.