Saltar al contenido principal
LibreTexts Español

13.5: La prueba t de muestras emparejadas

  • Page ID
    151803
  • \( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \) \( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)\(\newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\) \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\) \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\) \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\) \( \newcommand{\Span}{\mathrm{span}}\) \(\newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\) \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\) \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\) \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\) \( \newcommand{\Span}{\mathrm{span}}\)\(\newcommand{\AA}{\unicode[.8,0]{x212B}}\)

    Independientemente de si estamos hablando de la prueba de Student o de la prueba de Welch, una prueba t de muestras independiente está destinada a ser utilizada en una situación en la que se tienen dos muestras que son, bueno, independientes entre sí. Esta situación surge naturalmente cuando los participantes son asignados aleatoriamente a una de las dos condiciones experimentales, pero proporciona una aproximación muy pobre a otro tipo de diseños de investigación. En particular, un diseño de medidas repetidas —en el que se mide a cada participante (con respecto a la misma variable de resultado) en ambas condiciones experimentales— no es adecuado para el análisis mediante pruebas t de muestras independientes. Por ejemplo, podría interesarnos si escuchar música reduce la capacidad de memoria de trabajo de las personas. Para ello, podríamos medir la capacidad de memoria de trabajo de cada persona en dos condiciones: con música y sin música. En un diseño experimental como éste, 194 cada participante aparece en ambos grupos. Esto requiere que abordemos el problema de una manera diferente; mediante el uso de la prueba t de muestras pareadas.

    datos

    El conjunto de datos que usaremos esta vez proviene de la clase del Dr. Chico. 195 En su clase, los alumnos realizan dos pruebas mayores, una a principios del semestre y otra posterior en el semestre. Para escucharla contarlo, dirige una clase muy dura, una que la mayoría de los estudiantes encuentran muy desafiante; pero sostiene que al establecer evaluaciones duras, se anima a los estudiantes a trabajar más duro. Su teoría es que la primera prueba es un poco de “llamada de atención” para los estudiantes: cuando se den cuenta de lo dura que es realmente su clase, trabajarán más duro para la segunda prueba y obtendrán una mejor nota. ¿Ella tiene razón? Para probar esto, echemos un vistazo al archivo Chico.rdata:

    load( "./rbook-master/data/chico.Rdata" )
    str(chico)
    ## 'data.frame':    20 obs. of  3 variables:
    ##  $ id         : Factor w/ 20 levels "student1","student10",..: 1 12 14 15 16 17 18 19 20 2 ...
    ##  $ grade_test1: num  42.9 51.8 71.7 51.6 63.5 58 59.8 50.8 62.5 61.9 ...
    ##  $ grade_test2: num  44.6 54 72.3 53.4 63.8 59.3 60.8 51.6 64.3 63.2 ...

    El marco de datos chico contiene tres variables: una variable id que identifica a cada alumno en la clase, la variable grade_test1 que registra la calificación del alumno para la primera prueba, y la variable grade_test2 que tiene las calificaciones para la segunda prueba. Aquí están los primeros seis estudiantes:

    head( chico )
    ##         id grade_test1 grade_test2
    ## 1 student1        42.9        44.6
    ## 2 student2        51.8        54.0
    ## 3 student3        71.7        72.3
    ## 4 student4        51.6        53.4
    ## 5 student5        63.5        63.8
    ## 6 student6        58.0        59.3

    De un vistazo, sí parece que la clase es dura (la mayoría de las calificaciones están entre 50% y 60%), pero sí parece que hay una mejora de la primera prueba a la segunda. Si echamos un vistazo rápido a las estadísticas descriptivas

    library( psych )
    describe( chico )
    ##             vars  n  mean   sd median trimmed  mad  min  max range  skew
    ## id*            1 20 10.50 5.92   10.5   10.50 7.41  1.0 20.0  19.0  0.00
    ## grade_test1    2 20 56.98 6.62   57.7   56.92 7.71 42.9 71.7  28.8  0.05
    ## grade_test2    3 20 58.38 6.41   59.7   58.35 6.45 44.6 72.3  27.7 -0.05
    ##             kurtosis   se
    ## id*            -1.38 1.32
    ## grade_test1    -0.35 1.48
    ## grade_test2    -0.39 1.43

    vemos que esta impresión parece estar apoyada. En todos los 20 alumnos 196 la nota media para la primera prueba es de 57%, pero esta se eleva a 58% para la segunda prueba. Si bien, dado que las desviaciones estándar son 6.6% y 6.4% respectivamente, está empezando a sentir que tal vez la mejora es simplemente ilusoria; tal vez solo variación aleatoria. Esta impresión se refuerza cuando se ven las medias y los intervalos de confianza trazados en la Figura 13.11. Si confiáramos solo en esta trama, llegaríamos a la misma conclusión que obtuvimos al observar las estadísticas descriptivas que produjo la función describe (). Al observar cuán amplios son esos intervalos de confianza, estaríamos tentados a pensar que la aparente mejora en el rendimiento de los estudiantes es pura casualidad.

    pairedta-1.png
    Figura 13.11: Grado medio para la prueba 1 y la prueba 2, con intervalos de confianza asociados del 95%

    Sin embargo, esta impresión es errónea. Para ver por qué, eche un vistazo a la gráfica de dispersión de las calificaciones para la prueba 1 contra las calificaciones para la prueba 2. que se muestran en la Figura 13.12.

    pairedtb-1.png
    Figura 13.12: Gráfica de dispersión que muestra las calificaciones individuales para la prueba 1 y la prueba 2

    En esta parcela, cada punto corresponde a las dos calificaciones de un alumno dado: si su calificación para la prueba 1 (x coordenada) es igual a su calificación para la prueba 2 (y coordenada), entonces el punto cae en la línea. Los puntos que caen por encima de la línea son los alumnos que obtuvieron mejores resultados en la segunda prueba. Críticamente, casi todos los puntos de datos caen por encima de la línea diagonal: casi todos los estudiantes parecen haber mejorado su calificación, aunque sólo sea en una pequeña cantidad. Esto sugiere que debemos estar viendo la mejora que realiza cada alumno de una prueba a otra, y tratarla como nuestros datos brutos. Para ello, necesitaremos crear una nueva variable para la mejora que cada alumno realice, y agregarla al marco de datos chico. La forma más fácil de hacerlo es la siguiente:

    chico$improvement <- chico$grade_test2 - chico$grade_test1 

    Observe que asigné la salida a una variable llamada chico$improvement. Eso tiene el efecto de crear una nueva variable llamada mejora dentro del marco de datos chico. Entonces ahora cuando miro el marco de datos chico, obtengo una salida que se ve así:

    head( chico )
    ##         id grade_test1 grade_test2 improvement
    ## 1 student1        42.9        44.6         1.7
    ## 2 student2        51.8        54.0         2.2
    ## 3 student3        71.7        72.3         0.6
    ## 4 student4        51.6        53.4         1.8
    ## 5 student5        63.5        63.8         0.3
    ## 6 student6        58.0        59.3         1.3

    Ahora que hemos creado y almacenado esta variable de mejora, podemos dibujar un histograma que muestre la distribución de estas puntuaciones de mejora (usando la función hist ()), que se muestra en la Figura 13.13.

    pairedtc-1.png
    Figura 13.13: Histograma que muestra la mejora realizada por cada alumno en la clase de Dr Chico. Observe que casi toda la distribución está por encima de cero: la gran mayoría de los estudiantes sí mejoraron su desempeño desde la primera prueba hasta la segunda

    Cuando miramos el histograma, es muy claro que aquí hay una mejora real. La gran mayoría de los estudiantes obtuvieron puntajes más altos en la prueba 2 que en la prueba 1, reflejándose en el hecho de que casi todo el histograma está por encima de cero. De hecho, si usamos CIMean () para calcular un intervalo de confianza para la media poblacional de esta nueva variable,

    ciMean( x = chico$improvement )
    ##           2.5%    97.5%
    ## [1,] 0.9508686 1.859131

    vemos que es 95% seguro que la verdadera mejora promedio (en toda la población) estaría entre 0.95% y 1.86%. Así se puede ver, cualitativamente, lo que está pasando: hay una mejora real “dentro del estudiante” (todos mejoran alrededor de 1%), pero es muy pequeña cuando se pone contra las diferencias bastante grandes “entre estudiantes” (las calificaciones de los estudiantes varían en aproximadamente un 20% más o menos).

    ¿Qué es la prueba t de muestras pareadas?

    A la luz de la exploración anterior, pensemos en cómo construir una prueba t apropiada. Una posibilidad sería intentar ejecutar una prueba t de muestras independientes usando grade_test1 y grade_test2 como variables de interés. Sin embargo, esto es claramente lo incorrecto: la prueba t de muestras independientes asume que no existe una relación particular entre las dos muestras. Sin embargo, claramente eso no es cierto en este caso, debido a la estructura de medidas repetidas a los datos. Para usar el lenguaje que introduje en la última sección, si intentáramos hacer una prueba t de muestras independientes, estaríamos fusionando las diferencias dentro de los sujetos (que es lo que nos interesa probar) con el tema entre variabilidad (que no somos).

    La solución al problema es obvia, espero, ya que ya hicimos todo el trabajo duro en el apartado anterior. En lugar de ejecutar una prueba t de muestras independientes en grade_test1 y grade_test2, realizamos una prueba t de una muestra en la variable diferencia dentro del sujeto, mejora. Para formalizar esto ligeramente, si X i1 es la puntuación que obtuvo el i-ésimo participante en la primera variable, y X i2 es la puntuación que obtuvo la misma persona en la segunda, entonces la puntuación de diferencia es:

    D i = X i1 −X i2

    Observe que las puntuaciones de diferencia son la variable 1 menos la variable 2 y no al revés, así que si queremos que la mejora se corresponda con una diferencia valorada positiva, en realidad queremos que “prueba 2” sea nuestra “variable 1”. Igualmente, diríamos que μ D1 −μ 2 es la media poblacional para esta variable de diferencia. Entonces, para convertir esto en una prueba de hipótesis, nuestra hipótesis nula es que esta diferencia de medias es cero; la hipótesis alternativa es que no es:

    H 0:μ D =0

    H 1:μ D ≠ 0

    (esto es asumiendo que estamos hablando de una prueba a dos caras aquí). Esto es más o menos idéntico a la forma en que describimos las hipótesis para la prueba t de una muestra: la única diferencia es que el valor específico que predice la hipótesis nula es 0. Y así nuestra estadística t se define más o menos de la misma manera también. Si dejamos\(\ \bar{D}\) denotar la media de las puntuaciones de diferencia, entonces

    \(t=\dfrac{\bar{D}}{\operatorname{SE}(\bar{D})}\)

    que es

    \(t=\dfrac{\bar{D}}{\hat{\sigma}_{D} / \sqrt{N}}\)

    donde\(\ \hat{\sigma_D}\) está la desviación estándar de las puntuaciones de diferencia. Dado que esto es solo una prueba t ordinaria de una muestra, sin nada especial al respecto, los grados de libertad siguen siendo N−1. Y eso es todo: la prueba t de muestras pareadas realmente no es una prueba nueva en absoluto: es una prueba t de una muestra, sino aplicada a la diferencia entre dos variables. En realidad es muy simple; la única razón por la que merece una discusión siempre y cuando la que acabamos de pasar es que necesitas poder reconocer cuándo es apropiada una prueba de muestras pareadas, y entender por qué es mejor que una muestra independiente t prueba.

    Hacer la prueba en R, parte 1

    Cómo se hace una prueba t de muestras pareadas en R. Una posibilidad es seguir el proceso que describí anteriormente: crear una variable de “diferencia” y luego ejecutar una prueba t de una muestra sobre eso. Como ya hemos creado una variable llamada chico$improvement, hagámoslo:

    oneSampleTTest( chico$improvement, mu=0 )
    ## 
    ##    One sample t-test 
    ## 
    ## Data variable:   chico$improvement 
    ## 
    ## Descriptive statistics: 
    ##             improvement
    ##    mean           1.405
    ##    std dev.       0.970
    ## 
    ## Hypotheses: 
    ##    null:        population mean equals 0 
    ##    alternative: population mean not equal to 0 
    ## 
    ## Test results: 
    ##    t-statistic:  6.475 
    ##    degrees of freedom:  19 
    ##    p-value:  <.001 
    ## 
    ## Other information: 
    ##    two-sided 95% confidence interval:  [0.951, 1.859] 
    ##    estimated effect size (Cohen's d):  1.448

    La salida aquí está (obviamente) formateada exactamente igual que fue la última vez que usamos la función OneSampleTtest () (Sección 13.2), y confirma nuestra intuición. Hay una mejora promedio de 1.4% de la prueba 1 a la prueba 2, y esto es significativamente diferente de 0 (t (19) =6.48, p<.001).

    No obstante, supongamos que eres perezoso y no quieres hacer todo el esfuerzo de crear una nueva variable. O tal vez solo quieras mantener clara en tu cabeza la diferencia entre las pruebas de una muestra y las de muestras emparejadas. Si es así, puedes usar la función PairedSampleTestTest (), también en el paquete lsr. Supongamos que tus datos se organizaron como si estuvieran en el marco de datos chico, donde hay dos variables separadas, una para cada medición. La forma de ejecutar la prueba es ingresar una fórmula unilateral, tal como lo hiciste al ejecutar una prueba de asociación usando la función AssociationTest () en el Capítulo 12. Para el marco de datos chico, la fórmula que necesitas sería ~ grade_time2 + grade_time1. Como de costumbre, también necesitarás ingresar el nombre del marco de datos también. Entonces el comando simplemente se ve así:

    pairedSamplesTTest( 
         formula = ~ grade_test2 + grade_test1, # one-sided formula listing the two variables
         data = chico                           # data frame containing the two variables 
      )
    ## 
    ##    Paired samples t-test 
    ## 
    ## Variables:  grade_test2 , grade_test1 
    ## 
    ## Descriptive statistics: 
    ##             grade_test2 grade_test1 difference
    ##    mean          58.385      56.980      1.405
    ##    std dev.       6.406       6.616      0.970
    ## 
    ## Hypotheses: 
    ##    null:        population means equal for both measurements
    ##    alternative: different population means for each measurement
    ## 
    ## Test results: 
    ##    t-statistic:  6.475 
    ##    degrees of freedom:  19 
    ##    p-value:  <.001 
    ## 
    ## Other information: 
    ##    two-sided 95% confidence interval:  [0.951, 1.859] 
    ##    estimated effect size (Cohen's d):  1.448

    Los números son idénticos a los que provienen de la prueba de una muestra, que por supuesto tienen que darse que la prueba t de muestras pareadas es solo una prueba de una muestra bajo el capó. Sin embargo, la salida es un poco más detallada:

    Esta vez alrededor del bloque de estadísticas descriptivas te muestra las medias y desviaciones estándar para las variables originales, así como para la variable diferencia (fíjate que siempre define la diferencia como la primera variable listada extrae la segunda enumerada). La hipótesis nula y la hipótesis alternativa ahora se enmarcan en términos de las variables originales en lugar de la puntuación de diferencia, pero debes tener en cuenta que en una prueba de muestras pareadas sigue siendo la puntuación de diferencia que se está probando. La información estadística en la parte inferior sobre el resultado de la prueba es, por supuesto, la misma que antes.

    Hacer la prueba en R, parte 2

    La prueba t de muestras pareadas es un poco diferente de las otras pruebas t, ya que se utiliza en diseños de medidas repetidas. Para los datos de chico, a cada alumno se le “mide” dos veces, una para la primera prueba, y nuevamente para la segunda prueba. De vuelta en la Sección 7.7 Hablé del hecho de que los datos de medidas repetidas se pueden expresar de dos formas estándar, conocidas como forma amplia y forma larga. El marco de datos chico es amplio: cada fila corresponde a una persona única. Te he mostrado primero los datos en ese formulario porque esa es la forma que más estás acostumbrada a ver, y también es el formato en el que es más probable que recibas datos. Sin embargo, la mayoría de las herramientas en R para tratar datos de medidas repetidas esperan recibir datos en forma larga. La prueba t de muestras emparejadas es un poco una excepción de esa manera.

    A medida que hagas la transición de un usuario novato a uno avanzado, vas a tener que sentirte cómodo con los datos de formato largo y cambiar entre los dos formularios. Para ello, quiero mostrarte cómo aplicar la función PairedSampleTestTest () a los datos de formato largo. Primero, usemos la función WideToLong () para crear una versión de formato largo del marco de datos chico. Si has olvidado cómo funciona la función WideToLong (), podría valer la pena volver a leer rápidamente la Sección 7.7. Suponiendo que lo hayas hecho, o que ya te sientas cómodo con la remodelación de datos, lo usaré para crear un nuevo marco de datos llamado chico2:

    chico2 <- wideToLong( chico, within="time" )
    head( chico2 )
    ##         id improvement  time grade
    ## 1 student1         1.7 test1  42.9
    ## 2 student2         2.2 test1  51.8
    ## 3 student3         0.6 test1  71.7
    ## 4 student4         1.8 test1  51.6
    ## 5 student5         0.3 test1  63.5
    ## 6 student6         1.3 test1  58.0

    Como puede ver, esto ha creado un nuevo marco de datos que contiene tres variables: una variable id que indica qué persona proporcionó los datos, una variable de tiempo que indica a qué prueba se refieren los datos (es decir, prueba 1 o prueba 2), y una variable de calificación que registra qué puntaje persona se metió en esa prueba. Observe que este marco de datos está en forma larga: cada fila corresponde a una medida única. Debido a que cada persona proporciona dos observaciones (prueba 1 y prueba 2), hay dos filas por cada persona. Para ver esto un poco más claramente, usaré la función sortFrame () para ordenar las filas de chico2 por variable id (ver Sección 7.6.3).

    chico2 <- sortFrame( chico2, id )
    head( chico2 )
    ##           id improvement  time grade
    ## 1   student1         1.7 test1  42.9
    ## 21  student1         1.7 test2  44.6
    ## 10 student10         1.3 test1  61.9
    ## 30 student10         1.3 test2  63.2
    ## 11 student11         1.4 test1  50.4
    ## 31 student11         1.4 test2  51.8

    Como puedes ver, hay dos filas para “estudiante1”: una que muestra su calificación en la primera prueba y la otra muestra su calificación en la segunda prueba. 197

    Bien, supongamos que nos dieron el marco de datos chico2 para analizar. ¿Cómo realizaríamos nuestra prueba t de muestras emparejadas ahora? Una posibilidad sería usar la función longToWide () (Sección 7.7) para forzar los datos de nuevo en forma amplia, y hacer lo mismo que hicimos anteriormente. Pero eso es una especie de derrotar el punto, y además, hay una manera más fácil. Pensemos en qué se estructura el marco de datos chico2: aquí hay tres variables, y todas importan. La medida de resultado se almacena como la calificación, y efectivamente tenemos dos “grupos” de mediciones (prueba 1 y prueba 2) que se definen por los puntos de tiempo en los que se da una prueba. Por último, debido a que queremos hacer un seguimiento de qué medidas se deben emparejar, necesitamos saber qué estudiante obtuvo cada calificación, que es lo que nos da la variable id. Entonces, cuando se le presentan sus datos en formato largo, nos gustaría especificar una fórmula de dos caras y un marco de datos, de la misma manera que lo hacemos para una prueba t de muestras independientes: la fórmula especifica la variable de resultado y los grupos, por lo que en este caso sería grade ~ time , y el marco de datos es chico2. Sin embargo, también necesitamos decirle la variable id, que en este caso se llama aburridamente id. Entonces nuestro comando es:

    pairedSamplesTTest( 
         formula = grade ~ time,  # two sided formula: outcome ~ group
         data = chico2,           # data frame
         id = "id"                # name of the id variable
      )
    ## 
    ##    Paired samples t-test 
    ## 
    ## Outcome variable:   grade 
    ## Grouping variable:  time 
    ## ID variable:        id 
    ## 
    ## Descriptive statistics: 
    ##              test1  test2 difference
    ##    mean     56.980 58.385     -1.405
    ##    std dev.  6.616  6.406      0.970
    ## 
    ## Hypotheses: 
    ##    null:        population means equal for both measurements
    ##    alternative: different population means for each measurement
    ## 
    ## Test results: 
    ##    t-statistic:  -6.475 
    ##    degrees of freedom:  19 
    ##    p-value:  <.001 
    ## 
    ## Other information: 
    ##    two-sided 95% confidence interval:  [-1.859, -0.951] 
    ##    estimated effect size (Cohen's d):  1.448

    Tenga en cuenta que el nombre de la variable id es “id” y no id. Tenga en cuenta que la variable id debe ser un factor. A partir de la escritura actual, es necesario incluir las comillas, porque la función PairedSamplestTest () está esperando una cadena de caracteres que especifique el nombre de una variable. Si alguna vez encuentro el tiempo voy a tratar de relajar esta restricción.

    Como puedes ver, es un poco más detallado que el resultado de OneSampleTtest (). Te da la estadística descriptiva de las variables originales, establece la hipótesis nula de una manera que es un poco más apropiada para un diseño de medidas repetidas, y luego reporta todas las tuercas y tornillos de la propia prueba de hipótesis. No es sorprendente que los números sean los mismos que los que vimos la última vez.

    Un comentario final sobre la función PairedSamplestTest (). Una de las razones por las que lo diseñé para poder manejar datos de formato largo y ancho es que quiero que te pongas cómodo pensando en datos de medidas repetidas en ambos formatos, y también que te familiarices con las diferentes formas en que las funciones R tienden a especificar modelos y pruebas para datos de medidas repetidas. Con ese último punto en mente, quiero destacar una forma ligeramente diferente de pensar lo que está haciendo la prueba t de muestras pareadas. Hay un sentido en el que lo que realmente estás tratando de hacer es mirar cómo se relaciona la variable de resultado (grado) con la variable de agrupación (tiempo), después de tomar en cuenta el hecho de que existen diferencias individuales entre las personas (id). Entonces hay un sentido en el que id es en realidad un segundo predictor: estás tratando de predecir la calificación sobre la base del tiempo y el id. Con eso en mente, la función PairedSamplestTest () te permite especificar una fórmula como esta

    grade ~ time + (id)

    Esta fórmula le dice a R todo lo que necesita saber: la variable de la izquierda (grade) es la variable de resultado, el término entre corchete a la derecha (id) es la variable id y el otro término a la derecha es la variable de agrupación (tiempo). Si especifica su fórmula de esa manera, entonces solo necesita especificar la fórmula y el marco de datos, y así puede salirse con la suya usando un comando tan simple como este:

    pairedSamplesTTest( 
         formula = grade ~ time + (id),
         data = chico2
      )

    o puedes soltar los nombres de los argumentos y simplemente hacer esto:

    > pairedSamplesTTest( grade ~ time + (id), chico2 )

    Estos comandos producirán la misma salida que el último, personalmente me parece mucho más elegante este formato. Dicho esto, la razón principal para permitirte escribir tus fórmulas de esa manera es que son bastante similares a la forma en que se especifican los modelos mixtos (análisis de medidas repetidas de pantalones elegantes) en el paquete lme4. Este libro no habla de modelos mixtos (¡todavía!) , pero si vas a aprender más estadísticas las encontrarás bastante difíciles de evitar, así que he tratado de sentar un poco de las bases aquí.


    This page titled 13.5: La prueba t de muestras emparejadas is shared under a CC BY-SA 4.0 license and was authored, remixed, and/or curated by Danielle Navarro via source content that was edited to the style and standards of the LibreTexts platform; a detailed edit history is available upon request.