Archivo | Software para revisiones sistemáticas RSS feed for this section

MAVIS, una aplicación para meta-análisis

23 Ago

Advierto desde el principio que esta entrada no trata sobre lectura ni sobre comprensión. Simplemente, escribo para compartir una herramienta que me ha resultado útil y que quizá pueda servir a otros.

El meta-análisis es un conjunto de cálculos que se utilizan para combinar los resultados de distintas investigaciones sobre un tema. Es decir, se trata de una herramienta útil para revisar y sintetizar, por ejemplo, la eficacia de un método o la relación entre dos variables, cuando se han realizado distintos estudios que ofrecen resultados diversos.

Hace tiempo ya escribí sobre algunos programas para realizar meta-análisis y, recientemente, he utilizado uno sencillo pero con bastantes funcionalidades. Este programa es MAVIS (Meta-analysis via Shiny).

R es un lenguaje y entorno de programación para estadística muy flexible. Existen varias aplicaciones para realizar meta-análisis en R, pero R es un entorno para especialistas bastante difícil de utilizar para gente sin formación.

Por otra parte, Shiny es una librería que permite el desarrollo de aplicaciones web con lenguaje R y MAVIS es una web que hace funcionar algunas aplicaciones de R para meta-análisis de una forma bastante fácil, en la que solo es necesario pegar los datos y seleccionar los parámetros en distintos menús.

MAVIS realiza meta-análisis según los modelos de efectos fijos y aleatorios, trabaja con la d de Cohen, con el coeficiente de correlación y con modelos dicotómicos, cuenta con distintas formas de estimar la heterogeneidad y realiza análisis de moderadores

Entre los resultados que ofrece están: el tamaño del efecto combinado, distintos indicadores de heterogeneidad y algunos cálculos sobre el riesgo de sesgo de publicación. Proporciona un diagrama de bosque con los tamaños del efecto y un diagrama de embudo.

Además, cuenta con una herramienta con distintas medidas para valorar el acuerdo entre distintos codificadores.

W. Kyle Hamilton

Distintas personas han intervenido en el desarrollo de esta herramienta, pero su versión actual se debe, fundamentalmente, a Kyle Hamilton, que actualmente es un alumno de doctorado de la universidad de California Merced. Además de MAVIS, ha desarrollado otras aplicaciones web para análisis de variables latentes, análisis de ítems de tests o análisis de TRI

Calculando la kappa de Cohen con poco esfuerzo

26 Jun

Dos advertencias importantes:

  1. Ésta no es una entrada sobre comprensión lectora sino sobre análisis estadístico. Leer su contenido puede producir daños cerebrales irreversibles.
  2. Yo sé muy poco de estadística. Mi formación más avanzada consistió en un curso de introducción al análisis estadístico, así que no hay que tomarse muy en serio lo que digo porque puede haber errores de todo tipo.

Ahora paso a lo que voy a contar:

Una situación muy común en investigación educativa es que una persona, a la que llamamos el juez, tenga que valorar algo. Podemos poner como ejemplo una prueba de comprensión lectora con preguntas de respuesta libre en la que el alumno tiene 0 puntos si la respuesta es incorrecta, 1 punto si es correcta pero incompleta y 2 puntos si es correcta y completa. Eso lo tiene que valorar un juez. Pero, ¿sabemos si el juez es fiable? Una forma habitual de comprobarlo es que otro juez (o varios jueces) evalúen las mismas pruebas para ver si lo hacen igual. Después se analiza hasta qué punto son iguales o diferentes las valoraciones y así se mide la fiabilidad de los jueces.

Una forma muy sencilla de valorar la fiabilidad es contar las veces que los dos jueces están de acuerdo, las veces en que dan puntuaciones diferentes y obtener el porcentaje de acuerdo. Una crítica que suele hacerse a este sistema es que no tienen en cuenta las veces que los observadores se podrían poner de acuerdo por azar.

De wikipedia

La kappa de Cohen tiene en cuenta el porcentaje de acuerdo entre los jueces, y también el porcentaje de acuerdo que obtendrían contestando al azar. Al final de la entrada dejo algunos enlaces donde se puede encontrar más información sobre esta medida, su uso, las fórmulas para calcularla, etc. Solo añadiré aquí que la kappa de Cohen se suele emplear para valorar la fiabilidad entre jueces que miden variables cualitativas (clasifican a los sujetos en grupos excluyentes) como el color, suspenso – suficiente – bien – notable – sobresaliente, existe – no existe…

Las calculadoras

Pero mi intención no es enseñar a usar la kappa de Cohen, sino advertir a las personas que necesiten calcularla que, además del cálculo a mano, o en una hoja de cálculo, existen varias calculadoras online muy útiles. Aquí dejo los enlaces a algunas de ellas:

· Kappa de Cohen para 2 jueces y 2 categorías (2*2), en español.

· Online kappa calculator. Aplicación java para calcular la kappa con dos o más jueces.

Y mi favorita que es la siguiente:

· ReCal2: reliability for 2 coders.

Ésta última tiene una versión para tres o más jueces, pero lo que más me gusta es que además de la kappa de Cohen calcula otras medidas. Todo lo que tienes que hacer es preparar una hoja de cálculo con dos columnas, cada una con los datos de un evaluador (sin que queden casillas vacías), guardarla en formato .csv y subirla a la web. La calculadora ofrecerá el porcentaje de acuerdo entre los evaluadores, la kappa de Cohen, la pi de Scott y la alfa de Krippendorff. Esas dos últimas medidas son muy similares a la kappa, y cuando lo he usado las diferencias entre unas y otras suelen ser de milésimas.

Información general

Dejo aquí algunos enlaces en los que se ofrece más información sobre esta medida, su utilidad, la forma de calcularla y orientaciones para interpretar sus valores:

Evaluación de la concordancia inter-observador en investigación pediátrica: coeficiente de kappa.

The kappa coefficient: a review.

Cohen’s kappa (wikipedia).

Primeros pasos con el entorno estadístico R

26 Sep

Comenté hace mucho tiempo que R es un entorno para estadística libre que tiene, entre muchísimas otras cosas, varios paquetes para la realización de metanálisis. Al carecer de presupuesto para mis investigaciones no puedo permitirme usar SPSS (sí que podría, en los ordenadores de la Universidad de Navarra, pero me resulta complicado ir hasta allí), y el programa PSPP, con el que hice los cálculos de mi tesis sirvió, pero tiene enormes limitaciones, así que he decidido seguir trabajando con R.

Mi intención es contar en esta entrada los primeros problemas que un completo novato como yo tiene con él. No tuve especiales dificultades con la instalación, pero una vez que pones en marcha R lo que encuentras es el signo

>

A diferencia de otros paquetes, aquí no hay una tabla donde se definen las variables y se incluyen los datos para luego seleccionar las funciones que quieras aplicar, sino que se hace todo «a mano», como si fuera un lenguaje de programación (en cierto modo es eso). Me entero de que existe la posibilidad de completar el programa con un interfaz gráfico, pero, por ahora no voy a explorar esa posibilidad.

La ayuda ayuda poco

R tiene sus manuales y ayuda online. Basta con escribir

> help()

poniendo entre paréntesis el comando sobre el que se quiera la ayuda para acceder a una completa ficha sobre ese comando. Por ejemplo, si quiero saber saber más sobre cómo calcular una media, solo tengo que escribir

help(mean)

claro que, para eso, hay que saber que la función para calcular medias se llama «mean», y la información que encuentro es exhaustiva, detallada y poco útil. Así que, asumiendo que no tengo ni idea busco algún manual diseñado para gente como yo. Los que me permiten avanzar son: R para principiantes, El entorno estadístico R: ventajas de su uso para docencia e investigación, e Introducción al entorno R. Además de eso, basta con introducir en un buscador lo que estás buscando (por ejemplo «calcular ancova en R») para encontrar un montón de explicaciones. Afortunadamente hay mucha gente que trabaja con este entorno.

Los signos <- y ->

Una de las cosas que llama enseguida la atención es que se emplean mucho los signos <- y -> para asignar valores. Son algo así como «esto equivale a la cosa que le está apuntando». Por ejemplo (yo escribo lo que está en rojo, y el programa de devuelve lo que está en azul)

> a <- 7+6
> a
[1] 13
> c <- a + 9
> c
[1] 22

Pero las cosas no solo se convierten en un número, sino que se pueden convertir en vectores o tablas. Por ejemplo:

> resultados <- c(4,3,2,9,3)
> resultados
[1] 4 3 2 9 3
> mean(resultados)
[1] 4.2
En este caso, he utilizado «c», que sirve para combinar valores en un vector o una lista, de modo que «resultados» equivale a todos los elementos de la lista, de modo que puedo calcular su media («mean»).

Importar datos

Trabajar de esa forma con colecciones muy grandes de datos es muy engorroso, pero R permite importar tablas de datos generadas con otros programas. Yo he creado una tabla con Open Office Calc y la he exportado como fichero .csv (valores separados por comas).  Es importante que el fichero se encuentre en el directorio de trabajo de R. Para saber cuál es se escribe

> getwd()

(Si no te gusta lo puedes cambiar con el comando «setwd()»). Una vez que el fichero con los datos está en el directorio de trabajo lo importo de la siguiente manera:

> datos <- read.table(«comparacionmedias.csv», sep=»,»)
> datos
   V1 V2
1 22 36
2 22 17
3 15 19
4 13 22
5 13 42
6 27 19
7 25 33
8 36 21
9 24 24
10 18 28

En este caso «sep=»,»» quiere decir que los datos de la tabla están separados por coma. Si no lo hubiera incluido las filas importadas hubieran sido

 V1 V2
1 22 ,36
2 22 ,17
3 15 ,19

R asigna a cada columna, de forma automática un nombre de variable (V1, V2). Si yo hubiera puesto en la primera fila de mi tabla nombres para las variables como «experimental» y «control», hubiera tenido que escribir

> datos <- read.table(«comparacionmedias.csv», sep=»,», header = TRUE)

para que R reconociese esa primera línea como los nombres de las variables.

Existen otras formas de importar datos como «scan» pero, no voy a escribir de lo que no he probado.

Primeros cálculos

Una de las cosas que más quebraderos de cabeza me dio fue descubrir cómo operar con las variables (las columnas de mi tabla). La forma de hacerlo es referirse a ellas de la siguiente forma: nombre de la tabla + $ + nombre de la variable. En mi caso datos$V1 y datos$V2.

> datos$V1
[1] 22 22 15 13 13 27 25 36 24 18 23 26 17 27 26 31 25 28 14 21 25 28 29 28 26
[26] 23 NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA
[51] NA NA NA NA

(NA es una casilla en blanco en la tabla). Incluso puedo asignarles otros nombres

> datos$V1 -> control

Una vez que he hecho estas cosas he avanzado mucho. Por ejemplo, puedo comparar los resultados del grupo experimental y de control mediante una prueba T

> t.test(datos$V1, datos$V2)

Welch Two Sample t-test

data: datos$V1 and datos$V2
t = -0.8269, df = 57.732, p-value = 0.4117
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-4.113143 1.708584
sample estimates:
mean of x mean of y
23.53846 24.74074

Desde aquí hasta la metarregresión queda un difícil camino por recorrer pero, por ahora, con estos sencillos ejercicios me queda la sensación de que he entendido el funcionamiento elemental del entorno.

Comprobar la equivalencia de dos grupos a partir del tamaño de la muestra, la media y la desviación típica

4 Sep

Imáginese esta investigación: durante un curso escolar se realiza una intervención para mejorar la comprensión lectora de una clase de 4º de Primaria. Como esperamos que estos alumnos tengan mejor comprensión lectora al terminar el curso que al empezarlo aunque no se haga nada especial, se compara su resultado final con el de un grupo de control: otra clase de alumnos de 4º de Primaria de otro colegio de la misma ciudad. Al terminar el curso, los resultados del grupo donde se ha hecho la intervención son mayores que los del grupo de control, y no solo eso, sino que la mejora experimentada entre el inicio y el final de curso también es mayor.

¿Significa eso que la intervención es eficaz? Es arriesgado decir que sí si no podemos responder a una pregunta importante: ¿eran comparables los dos grupos que se han comparado? Aunque los alumnos realizaban el mismo curso pueden ser bastante diferentes en otras características: un colegio puede estar escolarizando a alumnado de familias con un nivel sociocultural menor que el otro, o tener mayor proporción de repetidores en el curso, o puede ser que al comenzar el curso los alumnos de los dos colegios tuvieran diferentes niveles de comprensión lectora.

Existen formas de controlar esas diferencias. La más estimada en la actualidad es asignar a los alumnos al azar al grupo que recibe la intervención y al grupo de control. Así se atenuará cualquier diferencia entre los dos grupos de alumnos, si el número de alumnos es suficientemente grande. En casos como el que se ha descrito no es posible hacer una distribución aleatoria de los alumnos así que se puede hacer una evaluación de la comprensión lectora antes de comenzar la intervención (un pretest) y comprobar que los grupos son equivalentes. Eso se suele hacer estableciendo que las diferencias entre las medias de comprensión de los grupos no son significativamente diferentes, o estableciendo que la varianza de los resultados de comprensión lectora de los grupos no es significativamente diferente.

Un problema que me he encontrado es que hay estudios en los que se realiza un pretest, pero el autor no señala si los grupos eran equivalentes en comprensión lectora antes de comenzar la intervención. Soy bastante incompetente en estadística así que no sabía si era posible que yo mismo calculase si eran equivalentes ni qué datos podría necesitar. Sin embargo, buscando y buscando encontré una información útil: es posible analizar si la varianza de los resultados de dos o más grupos es significativamente diferente sin disponder de datos individuales de cada uno de los alumnos. Lo que se necesita es el número de alumnos que forman cada grupo (tamaño del grupo o N), la media de sus resultados y la desviación típica o la varianza del grupo. La explicación se puede encontrar en el apartado 3.2.1. del documento Análisis de varianza para varias muestras independientes, de Pedro Morales Vallejo, de la Universidad de Comillas.

Una web que lo hace más fácil

Me imagino que la mayoría de los lectores del blog no se van a lanzar como fieras a revisar estudios para comprobar si los grupos son equivalentes o no. Pero seguro que hay gente que se ha preguntado cosas como ¿estos dos grupos que puntuaron distinto en la evaluación diagnóstica se podían considerar similares, o la diferencia se debió a que partían de una situación diferente?, o colegios en los que se ha introducido un método nuevo y dudan si las diferencias en los resultados se deben al método o a que los alumnos con los que lo están aplicando son distintos que los alumnos con los que se aplicó el método anterior.

Para todos ellos, y para mí existe  la web Analysis of Variance from Summary Data, en la que basta con introducir el número de alumnos que hay en cada grupo, la media de los resultados y la desviación típica para tener un análisis de varianza. Al calcularlo se obtiene en la casilla «p» (la que está más a la derecha) una puntuación menor que 0,05 se suele considerar que los grupos no son equivalentes o que no pertenecen a la misma población en lo referido al rasgo que se está midiendo.

Analysis of Variance from Summary Data

La d de Cohen como tamaño del efecto

26 Oct

La d de Cohen es una medida del tamaño del efecto como diferencia de medias estandarizada. Es decir, nos informa de cuántas desviaciones típicas de diferencia hay entre los resultados de los dos grupos que se comparan (grupo experimental y grupo de control, o el mismo grupo antes y después de la intervención).

En una entrada anterior sobre la g de Hedges (otra diferencia de medias estandarizada) se puede encontrar una explicación sobre qué es lo que se está midiendo que se puede aplicar a la d de Cohen. En otra entrada anterior sobre el tamaño del efecto se pueden encontrar algunas referencias para juzgar si ese resultado es pequeño, moderado o grande.

El cálculo de la d es sencillo cuando se dispone de la media de los resultados y la desviación típica de cada grupo. Pero cuando uno comienza a informarse se encuentra con que, incluso para ese caso elemental, distintos autores proponen distintas fórmulas, y entonces es cuándo comienza la incertidumbre.

En algo están todos de acuerdo: para calcular la d de Cohen restamos las medias, la del grupo que recibe el tratamiento menos la del grupo de control, o si en el diseño sólo hay un grupo, la de después del tratamiento menos la de antes. Una vez que se tiene el resultado de la diferencia de medias, hay que dividirlo entre  la desviación típica de ese resultado en la población. Aquí es donde empiezan las diferencias.

Lo normal es que desconozcamos cuál es la desviación típica en la población de una medida como los resultados de una prueba de comprensión lectora, así que ese dato desconocido tiene que ser inferido de a partir de los datos que tenemos (la desviación típica de las muestras que han participado en la investigación).

Imagen tomada de Wikipedia

(1) Fórmula de la d si las desviaciones típicas son iguales

Un caso poco habitual, pero posible, es que los resultados del grupo experimental y del grupo de control tengan la misma desviación típica. En ese caso, se divide la diferencia de medias entre esa desviación típica, y ya está calculada la d. Cuando la desviación típica de los dos grupos es distinta existe la posibilidad de elegir la de uno de ellos. En ese caso se suele elegir la del grupo de control, ya que se asume que como no recibe ninguna intervención será más parecido a la población general que el grupo experimental.

(2) d de Cohen para grupos iguales

Pero lo más habitual es utilizar la desviación típica combinada de los dos grupos, y eso se puede hacer mediante distintas fórmulas. En la que apompaña a este párrafo se calcula la raíz cuadrada de la media de las dos desviaciones típicas. Esta forma se reserva solo para el caso en que los dos grupos tengan el mismo número de sujetos.

(3) Desviación típica combinada con grupos de tamaño diferente

Quizá la fórmula más conocida para calcular la d de Cohen es la que calcula la desviación típica combinada tal como aparece a la izquierda de este párrafo. Según Hunter y Schmidt (2004), la particularidad de esta forma de cálculo es que el peso de cada desviación típica no se da según el tamaño de cada grupo (n), sino según los grados de libertad (n-1). Por tanto, se puede plantear una alternativa en la que desaparezcan los -1 y el -2. Hunter y Schmidt consideran que la diferencia entre ambos planteamientos es mínima.

Quien tenga conocimientos sobre  el tema o, simplemente sea observador, se habrá dado cuenta de que al calcular la d de Cohen con una desviación típica combinada en la que se asignan los pesos según los grados de libertad (n-1) en realidad estamos calculando la g de Hedges.

Es evidente que hace falta alguien que explique esto mejor que yo, pero por ahora no he encontrado una explicación clara y razonada del por qué de todas estas sutiles diferencias. Por lo menos sí he encontrado indicaciones de que las diferencias entre unas y otras formas de calcular la d se minimizan cuando se emplean muestras grandes, y la preocupación surge cuando las muestras son pequeñas. Estos últimos días me ha tocado calcular la d de varios estudios con muestras pequeñas (entre 12 y 30 participantes por grupo) y las diferencias que se obtienen con distintas fórmulas son de unas centésimas.

Otra forma de calcular la desviación típica combinada

(4) Otra forma de calcular la desviación típica combinada

Wikipedia, en su entrada sobre el tamaño del efecto propone otra forma de calcular la desviación típica combinada. Es muy parecida a la de la g de Hedges, pero no se utiliza el «- 2» en el denominador. En la discusión que acompaña a la entrada se expone que esta forma de calcular la desviación típica combinada está extraída de un libro de Hartung, Knapp and Sinha.

¿Qué he hecho yo? Mi primer impulso fue utilizar la fórmula en la que la desviación típica se calcula tomando como peso el tamaño de cada grupo (esa que mencionan Hunter y Schmidt y no está representada en ninguno de los gráficos de la entrada) ya que si tengo que calcular muchas ds, cuanto más sencillo sea el cálculo más tiempo ahorraré. Mientras preparaba la entrada anterior sobre la lectura dialógica vi que las autoras habían empleado la calculadora de Wilson para hallar los tamaños del efecto, así que busqué información sobre eso y me encontré con una herramienta muy interesante:

Calculadora de tamaños del efecto de David B. Wilson.

No solo calcula varios tamaños del efecto, sino que tiene varias posibilidades para calcular la d de Cohen a partir de distintos estadísticos como pruebas T, chi-cuadrado, o pruebas F (cuando la prueba F compara dos grupos equivale al cuadrado de T, pero si se comparan más de dos grupos uno debería tener muy claro qué está haciendo y cómo va a interpretar la d que se obtenga). No están colgadas las fórmulas que se utilizan para calcular los tamaños del efecto, pero es posible encontrarlas en otros sitios, como en esta presentación sobre el tamaño del efecto. La forma de calcular la desviación típica combinada es la que aparece en la fórmula (3).

Para terminar: una curiosidad. El doctor Wilson es profesor de… Criminología.

Información adicional

· Un vídeo (en inglés) sobre el tamaño del efecto que utiliza como ejemplo un supuesto programa de mejora de la lectura. Ilustra muy bien cómo una intervención puede producir resultados significativos, pero tener un efecto tan pequeño que no merezca la pena el esfuerzo para desarrollarla.

Software para metanálisis

16 Oct

El paquete estadístico más utilizado en ciencias sociales, el SPSS, carece de funciones para realizar un metanálisis, y realizar los cálculos introduciendo manualmente las fórmulas es lento y te expone a numerosos fallos por errores en la escritura.

Existen programas especialmente pensados para el metanálisis. Algunos, como Comprehensive Meta-Analysis o ClinTools, son de pago, por lo que quedan fuera del alcance del investigador no subvencionado. He leído maravillas sobre un programa de Schmidt y Le, que realiza metanálisis según el método de Hunter y Schmidt, y que se puede solicitar directamente a Frank Schmidt, de la Universidad de Iowa. Evidentemente, esta forma de distribuión hace que sea poco conocido.

El RevMan de la fundación Cochrane es un excelente programa y es gratuito. No se centra solo en los cálculos, sino que abarca todo el proceso de revisión incluyendo, por ejemplo, un lugar donde añadir las hipótesis o preguntas que originan la investigación o una base de datos para introducir los estudios de los que se obtienen los distintos tamaños del efecto. El programa está diseñado especialmente para la medicina, y resulta poco flexible para otros usos.

The Meta-Analysis Calculator es un programa online muy sencillo, pero no me atreví a utilizarlo porque los resultados de las varianzas eran distintos a los que obtenía al calcularlas «a mano» (cabe la posibilidad de que el error fuera mío). También es gratuito Metastat, que no he probado.

Una posibilidad distinta es utilizar añadidos que doten de herramientas de metanálisis a otros programas. Existen algunos, que no he probado, para Excel y SPSS.

He dejado para el final el programa con el que voy a enredar próximamente. Se trata de Metafor,  un añadido para el entorno estadístico R especializado en metanálisis. Tanto R como Metafor son gratuitos, y, según he leído, ofrecen bastantes ventajas en comparación con otros programas de estadística, siendo una de las más notorias sus aplicaciones de generación de gráficas.

Bueno, espero poder contar dentro de poco mis primeras impresiones.

Ayudas para la gestión de referencias

4 Ene

Continúo buscando estudios experimentales sobre métodos para la mejora de la comprensión lectora para mi investigación sobre la eficacia de los distintos métodos. El volumen de información a manejar ya empieza a ser considerable, ya que no se trata sólo de tener la referencia, sino de saber si está disponible el documento completo, dónde puedo encontrarlo (en un archivo electrónico en mi ordenador, en google books, en la biblioteca de la universidad,…), y si aún no dispongo de él, tener el correo electrónico de los autores, un resumen del documento, si es posible, controlar cuáles he pedido y cuáles he recibido.

Hasta hace poco, para hacer una metanálisis o una revisión sistemática era necesario organizar toda esa información con un procesador de textos, una hoja de cálculo, una base de datos o con fichas. En la actualidad existen varios programas de gestión de referencias que pueden ayudar mucho en esa tarea.  En esta entrada de wikipedia se puede encontrar información sobre más de 25 programas para la gestión de referencias bibliográficas.

Aunque me gusta utilizar software libre siempre que puedo, en este caso, la Universidad de Navarra me facilita el acceso al programa Refworks, con el que estoy muy contento. Hasta ahora sólo le he encontrado un problema: aunque se pueden adjuntar archivos a las referencias, no pueden superar los 20 megas, y el administrador local pone un límite a la cantidad de información que se puede adjuntar, límite que ya superé durante mi tesis doctoral.

Entre los programas libres he utilizado JabRef, y me ha parecido una buena herramienta, pero estos programas son bastante diferentes unos de otros, y me imagino que una vez que te acostumbras a uno resulta difícil cambiar.