--- title: "Práctica 10. Contrastes de hipótesis con R" subtitle: "Contrastes para medias, varianzas y proporciones en una muestra y en dos muestras independientes o emparejadas" output: html_document: highlight: pygments theme: cerulean toc: yes toc_float: yes pdf_document: toc: yes word_document: toc: yes --- ```{r setup, include=FALSE} knitr::opts_chunk$set(echo = TRUE, eval=TRUE, message=FALSE, warning=FALSE) ``` \ \ \ # Objetivos 1. Continuar utilizando las funciones del conjunto de librerías [__tidyverse__](https://www.tidyverse.org/) para la manipulación y análisis de datos, y la librería [__flextable__](https://davidgohel.github.io/flextable/articles/overview.html) para la presentación de resultados. 2. Contrastes de hipótesis para medias, varianzas y proporciones en R \ \ \ \ # Preliminares: carga de las librerías que utilizaremos en esta práctica. ```{r} library(readxl) library(flextable) library(janitor) library(DescTools) library(broom) library(PropCIs) library(PairedData) library(tidyverse) ``` \ \ En esta práctica utilizaremos la siguiente función para dar formato a los resultados de los contrastes de comparación de proporciones, medias o varianzas; se presentan los estimadores de los parámetros, así como el p-valor del test de comparación, y la alternativa elegida en su caso. Como nos ocurría con la función `formatInterval()` que hemos usado en prácticas anteriores, __si se va a utilizar esta función, es preciso incluirla en el documento Rmd antes de llamarla por primera vez__. ```{r} # La función recibe como argumentos, los estimadores de los parámetros, el p-valor del # contraste, y opcionalmente la alternativa elegida y etiquetas para los encabezados formatTest <- function(est1, est2, pvalue, digits=4, alternative=NULL, labels=NULL,variable=NULL){ pvalue=ifelse(pvalue<0.0001,"<0.0001",pvalue) est1 <- round(est1,digits) est2 <- round(est2,digits) df <- data.frame(est1,est2,pvalue, stringsAsFactors = FALSE) if (is.null(labels)) labels=c("Estimate1","Estimate2") names(df)=c(labels,"P-value") if (!is.null(alternative)) df=cbind(df,alternative) if (!is.null(variable)) df=cbind(variable,df) return(df) } ``` \ \ \ En esta práctica seguiremos usando los datos de las tortugas de Boa Vista: ```{r} tortugas <- read_csv2("tortugas.csv") ``` # Introducción En esta práctica mostraremos como utilizar R para resolver los contrastes de hipótesis más comunes. En un contraste hay siempre dos hipótesis: * $H_0$: es normalmente la hipótesis de partida, y la que se acepta si la evidencia en contra no es muy fuerte. * $H_1$: es la hipótesis alternativa; solo se acepta si hay una fuerte evidencia a su favor. \ Es importante tener presente que __aceptar la hipótesis nula $H_0$ no nos asegura que sea cierta__; sólo nos dice que es compatible con los datos observados, y por tanto que es admisible y no hay evidencia para descartarla. Por el contrario, __cuando se rechaza $H_0$ es porque la evidencia en contra es muy fuerte (o lo que es lo mismo existe fuerte evidencia a favor de $H_1$__. Ello es así porque los contrastes se diseñan de forma que sólo existe una pequeña probabilidad $\alpha$ (_nivel de significación_) de rechazar $H_0$ si es cierta. \
Fijado un nivel de significación $\alpha$ (si no se especifica, se supondrá $\alpha=0.05$), la regla de decisión en un contraste de hipótesis es __siempre__: * Aceptar $H_0$ si $p-valor\ge \alpha$ * Rechazar $H_0$ si $p-valor<\alpha$ \ Si se rechaza $H_0$ se dice que el contraste ha resultado __significativo__
\ \ En los diferentes problemas que se irán planteando a lo largo de esta práctica adoptaremos como convenio la siguiente forma de plantear las preguntas: * Cuando la pregunta se plantea de la forma _"es admisible que ..._", o _"podemos aceptar que ..._", nos estaremos refiriendo a la hipótesis nula. * Cuando la pregunta se plantea en la forma _"existe evidencia suficiente de que ..."_ nos estaremos refiriendo a la hipótesis alternativa. De esta forma, de la lectura de la pregunta de puede deducir fácilmente cuál es el contraste de hipótesis a plantear. \ \ \ # 1. Contrastes sobre proporciones \ ## 1.1 Contrastes sobre una única muestra Tenemos una población sobre la que se mide una variable con dos posibles valores 0 y 1 (que pueden representar fracaso y éxito, macho y hembra, blanco y negro, ...), siendo $\pi_0$ la proporción de veces que ocurre el valor 0 y $\pi_1$ la proporción de veces que ocurre el 1. Se toma una muestra de tamaño $n$ en la que se observa $n_0$ veces el 0 y $n_1=n-n_0$ veces el 1. Por tanto, a partir de la muestra se estima que $\hat{\pi_0}=p_0=\frac{n0}{n}$. Los contrastes de hipótesis que nos podemos plantear son de la forma: $$\begin{cases} H_{0}: & \pi=\pi_{0}\\ H_{1}: & \pi\neq\pi_{0} \end{cases}\,\,\,\,\,\,\,\,\,\,\,\,\begin{cases} H_{0}: & \pi\ge\pi_{0}\\ H_{1}: & \pi<\pi_{0} \end{cases}\,\,\,\,\,\,\,\,\,\,\,\,\begin{cases} H_{0}: & \pi\le\pi_{0}\\ H_{1}: & \pi>\pi_{0} \end{cases}$$ \ ### Ejercicio 1
¿Existe evidencia suficiente de que la proporción de nidos afectados por cangrejos en la isla de Boavista es mayor que el 50%?
\ Si llamamos $\pi$ a la proporción de nidos afectados por cangrejos __en toda la isla__, de acuerdo con lo que hemos señalado más arriba, el contraste que se plantea es: $$\begin{cases} H_{0}: & \pi\le0.5\\ H_{1}: & \pi>0.5 \end{cases}$$ Podemos calcular cuál es la proporción de nidos con cangrejos en nuestra muestra: ```{r} tortugas %>% filter(!is.na(cangrejos)) %>% tabyl(cangrejos) %>% adorn_totals("row") ``` Por tanto, un 66.11% de los nidos de la muestra (595 nidos de 900) están afectados por cangrejos. Por tanto en esta muestra, la proporción de nidos afectados por cangrejos supera el 50%. Pero, ¿la evidencia aportada por esta muestra es suficiente para asegurar que __en toda la isla__ la proporción de nidos con cangrejos supera el 50%?. Para ello resolvemos el contraste mediante `binom_test`: ```{r} binom.test(595,900,p=0.5,alternative="greater") ``` Como el p-valor es prácticamente 0, aplicamos la regla de decisión que nos indica que se debe rechazar $H_0$; por tanto concluimos que hay evidencia suficiente de que los cangrejos afectan a más de la mitad de los nidos de la isla. __NOTA:__ En la redacción de informes o de artículos científicos, es habitual mostrar el valor exacto del p-valor con cuatro dígitos para valores hasta 0.0001. Para valores menores que éste, se suele señalar simplemente mediante la expresión $p<0.0001$ \ \ \ ### Ejercicio 2
En otros lugares de cría de Caretta caretta se viene observando que la proporción de nidos en los que aparece al menos una cría muerta es como mucho el 40%. ¿Podemos admitir que en Boavista ocurre lo mismo?
\ Si llamamos $\pi$ a la proporción de nidos con al menos una cría muerta, el contraste que se plantea en este caso es $$\begin{cases} H_{0}: & \pi\le0.4\\ H_{1}: & \pi>0.4 \end{cases}$$ Contamos el número de nidos donde hay al menos una cría muerta: ```{r} tortugas %>% mutate(tieneCriasMuertas=ifelse(crias_Muertas>0,"Sí","No")) %>% filter(!is.na(tieneCriasMuertas)) %>% tabyl(tieneCriasMuertas) %>% adorn_totals("row") ``` Como vemos en 374 de los 900 nidos (un 41.55%) hay al menos una cría muerta. Este resultado parece contradecir la hipótesis de que la proporción de tales nidos es como mucho un 40%. La realización del contraste de hipótesis nos aclarará si esta diferencia de un 1.55% es suficiente para asegurar que en realidad __en toda Boavista__ el porcentaje de nidos con crías muertas supera el 40%, o si simplemente este 1.55% está dentro del "ruido" o variabilidad aleatoria que cabe esperar por causa del muestreo, y por tanto no es suficiente para descartar la hipótesis de partida. Realizamos el contraste: ```{r} binom.test(374,900,p=0.4,alternative="greater") ``` Como vemos, el p-valor es 0.1791. Como es mayor que 0.05, concluimos que la evidencia no es suficiente para rechazar la hipótesis nula y por tanto podemos admitir que en Boavista la proporción (poblacional) de nidos con al menos una cría muerta no alcanza el 40%. Obsérvese que R nos ofrece además un intervalo de confianza que nos indica que con la muestra que tenemos, con un 95% de confianza lo más que podemos llegar a asegurar es que la proporción de nidos con al menos una cría muerta es mayor que el 38.82%. \ \ \ ### Ejercicio 3
Calcular la potencia del contraste anterior si no se desea aceptar que $\pi\le 0.4$ cuando en realidad es $\pi=0.45$
\ En el contraste anterior hemos considerado admisible la hipótesis de que la proporción de nidos con al menos una cría muerta es menor o igual que 0.4, aún cuando la estimación de dicha proporción en la muestra está ligeramente por encima de ese valor. Cabe preguntarse cuál es la probabilidad de que estemos cometiendo un error tipo II, esto es, aceptando una hipótesis nula que es falsa. Como la hipótesis nula puede ser falsa de muchas maneras (en este caso $H_0$ es que $\pi\le0.4$; esta hipótesis puede ser falsa si $\pi=0.45$, o si $\pi=0.47$, o si $\pi=0.7$, ...), normalmente debemos fijar cuál (o cuales) de todas las alternativas posibles nos interesa no confundir con la nula. En el planteamiento de la pregunta se nos dice que la alternativa que no queremos confundir con la hipótesis nula es $\pi=0.45$; esto es, que nos preocuparía decidir que $\pi\le 0.40$ cuando en realidad $\pi=0.45$. La potencia es la probabilidad complementaria del error II, y para calcularla en este caso debemos usar la función `power_binom_test()` del paquete `MESS`: ```{r} library(MESS) power_binom_test(n=900, p0=0.4, pa=0.45, sig.level=0.05, alternative="greater") ``` Como vemos, la potencia es del 91.53%; o dicho de otro modo, con una muestra como ésta, de 900 nidos, la probabilidad de cometer un error II (en este caso concreto, aceptar que $\pi\le 0.4$ cuando en realidad $\pi=0.45$) es 1-0.9153=0.0847. \ \ \ ### Ejercicio 4
Calcular el tamaño de muestra necesario para realizar el contraste del ejercicio anterior si se desea que la probabilidad de aceptar que $\pi\le 0.4$ cuando en realidad es $\pi=0.45$ sea inferior a 0.05.
\ El enunciado nos indica que queremos que la probabilidad de cometer un error tipo II (aceptando $H_0$ cuando es falsa porque $\pi=0.45$) sea como mucho del 5%. Eso significa que queremos realizar el contraste con una potencia de al menos el 95%. En la práctica (como resulta bastante intuitivo), la única manera de reducir el riesgo de error es tener más información. Esto se traduce en que deberíamos tomar una muestra más grande (o cambiar la estrategia de muestreo, pero eso queda para otro curso). Para calcular el tamaño de muestra también podemos usar `power_binom_test()` del siguiente modo, indicando en `pa` el valor de la alternativa para el que deseamos alcanzar la potencia indicada, en este caso 0.95: ```{r} power_binom_test(p0=0.4, pa=0.45, sig.level=0.05, power=0.95) ``` Este resultado nos indica que necesitaríamos una muestra de 1296 nidos. Por tanto, cuando a la función `power_binom_test()` le damos el tamaño de muestra, nos devuelve la potencia obtenida con ese tamaño; y si le damos la potencia que queremos conseguir nos devuelve el tamaño de muestra necesario. \ \ \ ## 1.2 Contraste de proporciones para dos muestras independientes. En este caso tenemos dos poblaciones independientes, en cada una de las cuales se evalúa una proporción; si $\pi_1$ y $\pi_2$ son las proporciones poblacionales respectivas, los contrastes que nos planteamos son: $$\begin{cases} H_{0}: & \pi_{1}=\pi_{2}\\ H_{1}: & \pi_{1}\neq\pi_{2} \end{cases}\,\,\,\,\,\,\,\,\,\,\,\,\begin{cases} H_{0}: & \pi_{1}\ge\pi_{2}\\ H_{1}: & \pi_{1}<\pi_{2} \end{cases}\,\,\,\,\,\,\,\,\,\,\,\,\begin{cases} H_{0}: & \pi_{1}\le\pi_{2}\\ H_{1}: & \pi_{1}>\pi_{2} \end{cases}$$ \ \ ### Ejercicio 6
La siguiente tabla muestra el número y proporción de nidos afectados por cangrejos en las playas de Ervatao y Ponta Cosme ```{r} tortugas %>% mutate(cangrejos=factor(cangrejos,levels=c(0,1),labels=c("No","Sí"))) %>% filter(playa=="Ervatao"|playa=="Ponta Cosme") %>% tabyl(playa,cangrejos, show_na = FALSE) %>% adorn_totals("col") %>% adorn_percentages("row") %>% adorn_pct_formatting() %>% adorn_ns() %>% adorn_title("combined") %>% flextable() %>% fontsize(size=12,part="all") %>% autofit() ``` Como puede apreciarse, en Ponta Cosme tienen cangrejos un 72.5% de los nidos, frente a un 54.8% en Ervatao ¿Constituyen estos datos evidencia suficiente de que la proporción de nidos con cangrejos es mayor en Ponta Cosme que en Ervatao?
\ Téngase en cuenta que la pregunta no es si en estas dos muestras la proporción de nidos con cangrejos es mayor en Ponta Cosme que en Ervatao, que es evidente que sí, sino si en el total de las playas, incluyendo aquellos nidos que no se han muestreado, la proporción es mayor en Ponta Cosme que en Ervatao. Para resolver este contraste debemos tener en cuenta que R ordena las variables alfanuméricas en orden alfabético. Por tanto la "primera" playa es Ervatao y la segunda "Ponta Cosme". Llamando $\pi$ a la proporción de nidos con cangrejos, el contraste planteado es: $$\begin{cases} H_{0}: & \pi_{E}\ge\pi_{PC}\\ H_{1}: & \pi_{E}<\pi_{PC} \end{cases}$$ Para resolver este contraste utilizamos la función `prop.test()` del siguiente modo: ```{r} prop.test(x=c(159,258),n=c(290,356),conf.level=0.95, alternative="less") ``` Como vemos, el p-valor (2.322e-06) es menor que $\alpha=0.05$. Por tanto concluimos que hay evidencia suficiente para rechazar $H_0$ y concluir que, efectivamente, la proporción de nidos con cangrejos es mayor en Ponta Cosme. Normalmente en publicaciones e informes el resultado de un contraste de proporciones se presenta en una tabla como la siguiente: ```{r} tortugas %>% filter(!is.na(cangrejos)&(playa=="Ponta Cosme"|playa=="Ervatao")) %>% group_by(playa) %>% summarise(nE=sum(cangrejos),n=n()) %>% do(tidy(prop.test(x=c(.$nE[1],.$nE[2]),n=c(.$n[1],.$n[2]),conf.level=0.95, alternative="less"))) %>% do(formatTest(.$estimate1,.$estimate2, .$p.value, alternative=.$alternative, labels=c("Ervatao","Ponta Cosme"), variable = "Presencia de Cangrejos")) %>% flextable() %>% fontsize(size=14, part="all") %>% autofit() ``` \ \ \ ### Ejercicio 7
Se desea saber si la proporción de nidos con cangrejos ha cambiado entre la primera campaña (1999) y la última (2004). ¿Existe evidencia de que tal proporción haya cambiado?
\ La siguiente tabla nos indica cuántos nidos tenían cangrejos en esas campañas, y qué proporción representaban: ```{r} tortugas %>% mutate(cangrejos=factor(cangrejos,levels=c(0,1),labels=c("No","Sí"))) %>% filter(!is.na(cangrejos)&(Año==1999|Año==2004)) %>% tabyl(Año,cangrejos, show_na = FALSE) %>% adorn_totals("col") %>% adorn_percentages("row") %>% adorn_pct_formatting() %>% adorn_ns() %>% adorn_title("combined") %>% flextable() %>% fontsize(size=12,part="all") %>% autofit() ``` Vemos que en 1999 tenían cangrejos un 60.8% de los nidos, frente a un 68.9% en 2004. Para determinar si la diferencia entre ambas proporciones es significativa (es decir, si existe evidencia suficiente de que en la población completa de nidos tales proporciones eran distintas) el test a realizar es: $$\begin{cases} H_{0}: & \pi_{1999}=\pi_{2004}\\ H_{1}: & \pi_{1999}\neq\pi_{2004} \end{cases}$$ Para realizar este contraste utilizamos `prop.test()`. Como la alternativa es ver si existen diferencias (no se pide ver si una proporción era mayor o menor que otra, sino si eran distintas), podemos especificar `alternative="two.sided"` o no especificar nada, ya que ésta es la alternativa por defecto: ```{r} prop.test(x=c(87,122),n=c(143,177),conf.level=0.95) ``` Como vemos, el p-valor es 0.1636, lo que significa que el contraste es no significativo, o que no hay diferencias significativas entre las dos proporciones. Por tanto, no hay evidencia de que la proporción de nidos con cangrejos haya cambiado entre el año 1999 y el 2004. La diferencia encontrada en las muestras (60.8% en 1999 frente al 68.9% en 2004) puede atribuirse al error aleatorio del muestreo. El resultado anterior nos muestra el intervalo de confianza para la diferencia de proporciones que, como vemos contiene al cero. De hecho un test bilateral (esto es, un test donde se compara si dos parámetros son iguales frente a la alternativa de que sean distintos) es equivalente a comprobar si el intervalo contiene o no al cero. Si un intervalo de confianza a nivel $1-\alpha$ contiene al cero, eso significa que en un contraste con nivel de significación $\alpha$ no se detectarán diferencias significativas entre los valores de los parámetros. \ \ \ ### Ejercicio 8
En las últimas campañas la proporción de nidos afectados por cangrejos en la playa de Ponta Cosme ha sido del 72.5%; en la campaña del próximo año se van a tomar medidas (trampas y venenos) para disminuir dicha proporción. Para ello se dividirá la playa en dos zonas, en una de las cuales se aplicarán las medidas y en la otra no. Se entenderá que las medidas son efectivas si disminuyen la proporción de nidos afectados por cangrejos en al menos un 15% cuando se comparen ambas zonas. Para comprobar dicha efectividad se muestreará el mismo número de nidos en ambas zonas. ¿Cuál debe ser ese número si se desea detectar esa diferencia del 15% con una significación del 5% y una potencia del 90%? ¿Y si se desea detectar una diferencia de un 10%?
\ De acuerdo con lo que hemos visto en el ejercicio 6, en Ponta Cosme durante las campañas anteriores había un 72.5% de nidos afectados por cangrejos. Una reducción del 15% significa que el año próximo esperamos que la proporción se reduzca a un 57.5%. El tamaño de muestra necesario para detectar dicha reducción con la significación y potencia especificadas se puede calcular usando la función `power_prop_test()`, también del paquete `MESS`: ```{r} power_prop_test(p1=0.725, p2=0.575, sig.level=0.05, power=0.9, alternative="one.sided") ``` Necesitaríamos, por tanto, una muestra de 172 nidos en cada zona de la playa. Si la diferencia a detectar fuese más pequeña, de un 10%, cabe esperar que el tamaño de muestra necesario sea más grande. La sintaxis a utilizar en este caso sería: ```{r} power_prop_test(p1=0.725, p2=0.625, sig.level=0.05, power=0.9, alternative="one.sided") ``` y por tanto necesitaríamos 374 nidos en cada zona de la playa. \ \ \ ## 1.3 Contraste de proporciones para dos muestras emparejadas. Recordemos que en la práctica anterior estuvimos trabajando con el archivo `luzNidos.csv` donde se recogían datos sobre la nidificación de las tortugas según hubiese luna llena o no. ```{r echo=TRUE} luzNidos <- read_csv2("luzNidos.csv") ``` En este archivo se recogen datos de 62 tortugas con las que se realizó una experiencia controlada para determinar si la profundidad del nido y/o el tamaño de la puesta están relacionados con la iluminación de la playa. Para ello, se identificaron todas las tortugas que anidaron más de una vez en las playas de Ervatao y Ponta Cosme en el año 2010; de éstas, se seleccionaron 62 que anidaron dos veces en zonas de similares características (tipo de arena, humedad, temperatura), pero una vez con la playa iluminada por la luna llena y otra vez con la playa oscura por no haber luna en el cielo. La tabla siguiente muestra como se comportó cada una de las 62 tortugas en las dos noches en que se registró su anidamiento (son las mismas 62 tortugas que han sido seguidas en dos noches distintas, por tanto se trata de muestras emparejadas): ```{r} luzNidos %>% select(id,luna,playa) %>% pivot_wider(values_from = playa, names_from = luna) %>% tabyl(si,no) %>% adorn_title("combined") %>% flextable() %>% fontsize(size=12,part="all") %>% autofit() ``` Esta tabla nos muestra que de las 62 tortugas, 4 anidaron en Ervatao tanto con luna como sin luna, 17 anidaron en Ervatao con luna pero se fueron a Ponta Cosme cuando no había luna; 10 anidaron en Ponta Cosme cuando había luna y en Ervatao cuando no había, y 21 anidaron en Ponta Cosme tanto con luna como sin luna. \ \ ### Ejercicio 9
¿Muestran los datos anteriores evidencia suficiente de que la proporción de tortugas que anidan en Ervatao es distinta según haya o no luna llena?
\ Con luna llena en Ervatao anidaron 4+17=21 tortugas que son un $\frac{21}{62}=0.3387=33.87$% de las 62 de la muestra; cuando no había luna, en Ervatao anidaro 4+10=14 tortugas, que son un $\frac{14}{62}=22.58$% de las 62. Por tanto, es evidente que en esta muestra la proporción de tortugas que anidan en Ervatao sin luna es menor que con luna. Para decidir si este resultado puede generalizarse a la población de tortugas debemos hacer el contraste de hipótesis siguiente, donde $\pi$ es la proporción de tortugas que anidan en Ervatao: $$\begin{cases} H_{0}: & \pi_{conLuna}=\pi_{sinLuna}\\ H_{1}: & \pi_{conLuna}\neq\pi_{sinLuna} \end{cases}$$ \ El contraste de proporciones con muestras emparejadas se resuelve en R mediante la función `mcnemar.test()`: ```{r} tabla <- luzNidos %>% select(id,luna,playa) %>% pivot_wider(values_from = playa, names_from = luna) %>% tabyl(si,no) tabla ``` Para pasar los resultados de esta tabla al test de Mc Nemar debemos quitar la primera columna (que tiene los nombres), y convertir la parte numérica de la tabla en matriz (ya que este test requiere que los datos se le pasen en forma de matriz): ```{r} mcnemar.test(as.matrix(tabla[,-1])) ``` __NOTA:__ El test de mc Nemar no permite resolver contrastes unilaterales. \ \ \ \ \ \ # 2. Contrastes sobre medias En las dos prácticas anteriores hemos visto como calcular intervalos de confianza utilizando la función `t.test`. La misma función sirve para resolver contrastes de hipótesis. \ ## 2.1 Contrastes para una media Estos contrastes son de la forma: $$\begin{cases} H_{0}: & \mu=\mu_{0}\\ H_{1}: & \mu\neq\mu_{0} \end{cases}\,\,\,\,\,\,\,\,\,\,\,\,\begin{cases} H_{0}: & \mu\ge\mu_0\\ H: & \mu<\mu_0 \end{cases}\,\,\,\,\,\,\,\,\,\,\,\,\begin{cases} H_{0}: & \mu\le\mu_0\\ H: & \mu>\mu_0 \end{cases}$$ \ \ ### Ejercicio 10
¿Muestran los datos evidencia suficiente de que la longitud media del caparazón de las tortugas que anidan en Boavista es mayor que 81 cm?
\ El contraste a resolver es: $$\begin{cases} H_{0}: & \mu\le81\\ H_{1}: & \mu>81 \end{cases}$$ Si calculamos la longitud media de las tortugas en la muestra tenemos: ```{r} tortugas %>% summarize(mean(LCC)) ``` por lo que en principio habría cierta evidencia en contra de $H_0$ ¿Es suficiente esta evidencia para rechazar esa hipótesis? Usamos el `t.test()`: ```{r} t.test(tortugas$LCC, mu=81, alternative="greater") ``` El p-valor es menor que $\alpha=0.05$, por lo que concluimos que efectivamente hay evidencia suficiente para asegurar que por término medio el caparazón de estas tortugas en mayor que 81 cm. \ \ \ ### Ejercicio 10
¿Es admisible la hipótesis de que las tortugas nidificantes de esta isla pesan por término medio menos de 61 kg?
\ El contraste a resolver es: $$\begin{cases} H_{0}: & \mu\le61\\ H_{1}: & \mu>61 \end{cases}$$ \ El peso medio de las tortugas de la muestra es: ```{r} tortugas %>% summarize(mean(peso)) ``` por lo que en principio la hipótesis es admisible; no sería necesario ni siquiera realizar el test, ya que no hay ninguna evidencia en contra de la hipótesis enunciada. En cualquier caso, si aplicamos `t.test`: ```{r} t.test(tortugas$peso,mu=61,alternative="greater") ``` Como vemos, p-valor>0.05, por lo que se admite $H_0$ \ \ \ ### Ejercicio 11
Calcula la potencia del contraste anterior si no se desea aceptar la hipótesis nula (que las tortugas pesan menos de 61 kg) cuando en realidad las tortugas pesan 61.5 kg
\ Utilizamos `power.t.test()`. Para usar esta función hay que indicar el tamaño de la muestra (tenemos 1277 tortugas) y la desviación típica de la variable de interés, en este caso el peso: ```{r} power.t.test(n=1277, sd=sd(tortugas$peso), delta=0.5, alternative="one.sided") ``` Así pues, la potencia es del 77.85%. Esta es la probabilidad de rechazar que las tortugas en media pesan menos de 61 kg cuando en realidad pesan 61.5. \ \ \ \ ## 1.2. Contrastes para dos medias en poblaciones independientes Los contrastes en este caso se refieren a las medias de dos poblaciones y son de la forma: $$\begin{cases} H_{0}: & \mu_{1}=\mu_{2}\\ H_{1}: & \mu_{1}\neq\mu_{2} \end{cases}\,\,\,\,\,\,\,\,\,\,\,\,\begin{cases} H_{0}: & \mu_{1}\ge\mu_{2}\\ H_{1}: & \mu_{1}<\mu_{2} \end{cases}\,\,\,\,\,\,\,\,\,\,\,\,\begin{cases} H_{0}: & \mu_{1}\le\mu_{2}\\ H_{1}: & \mu_{1}>\mu_{2} \end{cases}$$ \ ### Ejercicio 12
¿Muestran los datos evidencia suficiente de que los nidos de la playa de Ervatao son más profundos por término medio que los de Ponta Cosme?
\ Si llamamos $\mu$ a la profundidad media de los nidos, el contraste a realizar es de la forma: $$\begin{cases} H_{0}: & \mu_{E}\le\mu_{PC}\\ H_{1}: & \mu_{E}>\mu_{PC} \end{cases}$$ La profundidad media de los nidos en cada playa puede obtenerse mediante: ```{r} tortugas %>% filter(playa=="Ervatao"|playa=="Ponta Cosme") %>% group_by(playa) %>% summarize(profMedia=mean(profNido)) ``` por lo que en principio los nidos de la muestra de Ervatao son más profundos en media que los de la muestra de Ponta Cosme, pero ¿es esto suficiente para asegurar que en general __todos__ los nidos de Ervatao son en media más profundos que los de Ponta Cosme?. Para responder a esta pregunta debemos hacer un t.test: ```{r} t.test(profNido~playa, data=subset(tortugas,playa=="Ervatao"|playa=="Ponta Cosme"), alternative="greater") ``` Como vemos, el p-valor es muy pequeño, menor que $\alpha=0.05$, por lo que la evidencia es suficiente para asegurar que en Ervatao los nidos son realmente más profundos que en Ponta Cosme y que no es solo algo que haya podido ocurrir por azar en estas muestras. \ \ \ ### Ejercicio 13
En la campaña del año que viene se va a evaluar de nuevo la diferencia de profundidad entre los nidos de Ervatao y Ponta Cosme. Suponiendo que se toman muestras del mismo tamaño en ambas playas. ¿Cuál debe ser ese tamaño si se desea detectar una diferencia media de 5 cm con una potencia del 90% y una significación del 5%?
\ Nuevamente usaremos `power.t.test`; para ello necesitamos una estimación de la varianza en cada grupo, que obtenemos a partir de los datos disponibles en nuestra muestra actual: ```{r} tortugas %>% group_by(playa) %>% summarize(var=var(profNido),n=n()) ``` Ahora estas estimaciones de la varianza deben combinarse para obtener una estimación de la varianza promedio de ambos grupos, ponderando por el tamaño de cada uno de ellos; su raiz cuadrada nos dará una estimación de la desviación típica de la variable: $$s_{p}=\sqrt{\frac{\left(n_{1}-1\right)s_{1}^{2}+\left(n_{2}-1\right)s_{2}^{2}}{n_{1}+n_{2}-2}}$$ El valor de $s_p$ en este caso es: ```{r} sqrt((418*33.9+497*49.9)/(419+498-2)) ``` Como la profundidad de los nidos se mide en centimetros, la desviación típica anterior estará también en centímetros, por lo que la diferencia a detectar debemos expresarla también en cm, esto es, delta=5: ```{r} power.t.test(delta=5,sd=6.526156,power=0.9,sig.level=0.05,alternative="one.sided") ``` Por tanto, para detectar una diferencia media de 5 cm (para que esa diferencia sea declarada como significativa en caso de ser detectada) necesitaremos una muestra de 30 nidos en cada playa. \ \ \ ## 1.2. Contrastes para dos medias en poblaciones emparejadas Volvemos a utilizar los datos de anidamiento de 62 tortugas; queremos saber si la profundidad del nido es mayor cuando se hace en la oscuridad que cuando se hace con luna llena: $$\begin{cases} H_{0}: & \mu_{conLuna}\ge\mu_{sinLuna}\\ H_{1}: & \mu_{conLuna}<\mu_{sinLuna} \end{cases}$$ La profundidad media según que haya o no luna es: ```{r} luzNidos %>% group_by(luna) %>% summarize(mediaProfNido=mean(profNido)) ``` En principio los datos parecen apoyar la hipótesis de que sin luna las tortugas hacen nidos más profundos. ¿La evidencia es suficiente para extender el resultado a la población? Cambiamos la forma en que se presentan los datos: ```{r} lunaNidos <- luzNidos %>% select(id,luna,profNido) %>% pivot_wider(names_from = luna, names_prefix = "luna_",values_from=profNido) lunaNidos ``` y hacemos el t-test de muestras emparejadas: ```{r} t.test(lunaNidos$luna_si,lunaNidos$luna_no,alternative="less", paired=TRUE) ``` Como vemos, el p-valor es menor que 0.05 lo que significa que la evidencia es suficiente para afirmar que los nidos hechos en la oscuridad son más profundos que los hechos a la luz de la luna