Ejemplos sustantivos completos de investigación reproducible usando R

71

La pregunta: ¿Hay algún buen ejemplo de investigación reproducible usando R que esté disponible gratuitamente en línea?

Ejemplo ideal: Específicamente, los ejemplos ideales proporcionarían:

  • Los datos en bruto (e idealmente metadatos que explican los datos),
  • Todo el código R, incluida la importación de datos, el procesamiento, los análisis y la generación de salida,
  • Sweave o algún otro enfoque para vincular el resultado final al documento final,
  • Todo en un formato que se puede descargar y compilar fácilmente en la computadora de un lector.

Idealmente, el ejemplo sería un artículo de revista o una tesis donde el énfasis está en un tema aplicado real en lugar de un ejemplo de enseñanza estadística.

Motivos de interés: estoy particularmente interesado en temas aplicados en artículos de revistas y tesis, porque en estas situaciones, surgen varios problemas adicionales:

  • Surgen problemas relacionados con la limpieza y el procesamiento de datos,
  • Surgen problemas relacionados con la gestión de metadatos,
  • Las revistas y tesis a menudo tienen expectativas de guía de estilo con respecto a la apariencia y el formato de tablas y figuras,
  • Muchas revistas y tesis a menudo tienen una amplia gama de análisis que plantean problemas relacionados con el flujo de trabajo (es decir, cómo secuenciar los análisis) y el tiempo de procesamiento (por ejemplo, problemas de análisis de almacenamiento en caché, etc.).

Ver ejemplos de trabajo completos podría proporcionar un buen material de instrucción para los investigadores que comienzan con una investigación reproducible.

Jeromy Anglim
fuente

Respuestas:

14

Frank Harrell ha estado tocando el tambor en investigaciones e informes reproducibles durante muchos, muchos años. Puede comenzar en esta página wiki que enumera muchos otros recursos, incluida la investigación publicada y también cubre la página de Charles Geyer.

Dirk Eddelbuettel
fuente
11

La revista Bioestadística tiene un editor asociado para la reproducibilidad, y todos sus artículos están marcados:

Investigación reproducible

Nuestra política de investigación reproducible es que los artículos de la revista se marquen con cometa D si los datos en los que se basan están disponibles gratuitamente, C si el código de los autores está disponible libremente y R si tanto los datos como el código están disponibles, y nuestro El Editor Asociado de Reproducibilidad puede usarlos para reproducir los resultados en el documento. Los datos y el código se publican electrónicamente en el sitio web de la revista como Materiales complementarios.

http://biostatistics.oxfordjournals.org/

¿Qué tan buena es esa idea?

http://biostatistics.oxfordjournals.org/content/12/1/18.abstract viene con un paquete R en los suplementarios que hace el análisis, aún no lo he probado. Además, no puedo averiguar dónde se especifica el índice de apertura. Estoy enviando un correo electrónico al editor asociado con algunas preguntas ...

[editar]

Roger Peng, el editor asociado, me dice que probablemente no hay forma de encontrar los documentos reproducibles sin obtener el PDF. Me señaló a este que tiene una gran 'R' (que no significa clasificada como R como películas) para la reproducibilidad:

http://biostatistics.oxfordjournals.org/content/10/3/409.abstract

Por supuesto, el diario en sí no es gratuito ... #fail

Barry

Hombre espacial
fuente
1
Es genial ver una revista que prioriza la reproducibilidad. ¿Has visto buenos ejemplos de artículos marcados con R?
Jeromy Anglim
1
No lo priorizan para su publicación, creo que solo quieren resaltarlo. Editaré mi respuesta con un ejemplo.
Spacedman
10

Irreproducibilidad de los predictores de quimioterapia NCI60

Este es un análisis reproducible que muestra la falta de reproducibilidad de un artículo que ha aparecido en las noticias. Un ensayo clínico basado en las conclusiones falsas del artículo irreproducible fue suspendido, reinstalado, suspendido nuevamente ... Es un buen ejemplo de análisis reproducible en las noticias.

John D. Cook
fuente
10

Tengo algunos ejemplos de este tipo en mi página de trabajos de investigación . (No se me permite publicar más de un hipervínculo como miembro nuevo. Por lo tanto, solo describiré los documentos en ese sitio).

(1) "Hacer manifiesto de efectos en experimentos aleatorios" utiliza el sistema de viñetas de R.

(2) "Atribución de efectos a una campaña aleatoria de clúster para salir de la votación" fue un trabajo más complejo que implicaba algunas simulaciones que consumían mucho tiempo. Utilizamos un sistema basado en Makefile y lo publicamos en Dataverse

(3) "EDA para HLM" fue mi primer intento. Aquí acabo de poner los datos y los archivos de Sweave asociados en un tarball.

Un problema que descubrimos al crear nuestro archivo JASA fue que las versiones y los valores predeterminados de los paquetes CRAN cambiaron. Entonces, en ese archivo, también incluimos las versiones de los paquetes que utilizamos. El sistema basado en viñetas probablemente se romperá cuando la gente cambie sus paquetes (no estoy seguro de cómo incluir paquetes adicionales dentro del paquete que es el Compendio).

Finalmente, me pregunto qué hacer cuando R cambia. ¿Hay formas de producir, por ejemplo, una máquina virtual que reproduzca todo el entorno computacional utilizado para un papel de modo que la máquina virtual no sea enorme?

De todos modos, espero que estos ejemplos ayuden. Al menos muestran algunos de mis propios experimentos en esta área.

(Aquí hay algunos hipervínculos de texto sin formato).

  [2]: http://jakebowers.org/manifesteffects-compendium-howto.txt
  [3]: http://hdl.handle.net/1902.1/12174
  [4]: http://hdl.handle.net/1902.1/13376
Jake
fuente
Planteas algunas preguntas interesantes. He publicado una pregunta separada citandote
Jeromy Anglim
9

Koenker y Zeileis proporcionan una página web con un ejemplo relativamente completo. Que comparten:

  • Rnw (código de Sweave)
  • Código de análisis R
  • PDF final
  • Discusión de problemas de control de versiones
Jeromy Anglim
fuente
7

La página de Charles Geyer en Sweave tiene un ejemplo de una tesis, que cumple con algunos de sus requisitos (los datos sin procesar son simplemente de un paquete R, pero el código R / sweave y el PDF final están disponibles):

Un artículo sobre la teoría en la tesis de Yun Ju Sung, Inferencia de probabilidad de Monte Carlo para modelos de datos perdidos (preimpresión) contenía ejemplos informáticos. Cada número en el papel y cada trama se tomó (por cortar y pegar, debo admitirlo) de un documento de "materiales complementarios" hecho en Sweave.

(El archivo de origen está vinculado en la sección "Materiales complementarios para un documento").

Sé que he encontrado al menos un ejemplo R navegando en la página de material ReproducibleResearch.net antes, pero desafortunadamente no lo marqué.

ars
fuente
5

Simon Jackman tiene un ejemplo particularmente útil de analizar los resultados de una encuesta: "estadounidenses y australianos 10 años después del 11 de septiembre". Tiene múltiples ejemplos de integración de tablas y figuras.

Ha realizado el documento de Sweave y el informe en PDF a través de esta publicación de blog .

Si bien los datos en bruto no se proporcionan (por lo que puedo decir), por lo que no es posible ejecutar los ejemplos reales de Sweave, creo que se puede aprender un poco al estudiar el código de Sweave.

Jeromy Anglim
fuente
5

Neil Saunders analizó las interacciones en línea asociadas con una conferencia. Varias propiedades que lo hacen un ejemplo útil de Sweave incluyen:

  • Se proporciona el archivo Rnw
  • Los gráficos se generan usando ggplot
  • Buen tamaño y dominio fácilmente comprensible.

Los materiales están disponibles aquí:

Jeromy Anglim
fuente
4

Mire también el Journal of Statistical Software ; ellos animan a hacer papeles en Sweave.

usuario88
fuente
No, no formalmente: se recomienda el envío de LaTeX, pero si mira la página de instrucciones , no contiene la palabra Sweave. Los autores lo usan y / o envían el código R con el papel, pero para mí esto hace eco del punto de Shane sobre viñetas de paquetes.
Dirk Eddelbuettel
Ok, todavía la mayoría de los usuarios lo usan (también el estilo de revista incluye Swave.sty); El principal problema es que no hay Rnws publicados, todavía los documentos hechos por Sweave vienen con salida de Stangle.
4

He encontrado buenos en el pasado y los publicaré una vez que los desenterre, pero algunas sugerencias generales rápidas:

  1. Puede encontrar algunos ejemplos interesantes buscando en google con palabras clave y ext: rnw (que buscará archivos con la extensión sweave). Aquí hay un ejemplo de búsqueda . Este es el tercer resultado de mi búsqueda: http://www.ne.su.se/paper/araietal_source.Rnw . Aquí hay otro ejemplo de mi búsqueda: http://www.stat.umn.edu/geyer/gdor/ .
  2. Muchos paquetes R tienen viñetas interesantes que esencialmente equivalen a lo mismo. Un ejemplo: https://r-forge.r-project.org/scm/viewvc.php/paper/maxLik.Rnw
Shane
fuente
4

Robert Gentleman escribió un artículo titulado "Investigación reproducible: un estudio de caso de bioinformática"

Implementa un breve conjunto de análisis como un paquete R y utiliza Sweave. También discute el uso de Sweave de manera más general.

Consulte la sección "Archivos relacionados" de la página del artículo para obtener un archivo de todos los archivos y carpetas utilizados.

Referencia:

  • Gentleman, Robert (2005) "Investigación reproducible: un estudio de caso de bioinformática", Aplicaciones estadísticas en genética y biología molecular: vol. 4: Iss. 1, artículo 2.
  • DOI: 10.2202 / 1544-6115.1034
  • Disponible en: http://www.bepress.com/sagmb/vol4/iss1/art2
Jeromy Anglim
fuente
4

http://genome.cshlp.org/content/early/2011/06/09/gr.117523.110/suppl/DC1

Un buen papel, por un compañero de laboratorio mío. Nuestro IP estuvo bastante satisfecho cuando apareció algo parecido al correo de los fanáticos. Ahora todas las publicaciones del grupo tienen los métodos complementarios establecidos en LaTeX / Sweave. Algunos de los documentos también (no puedo decidir si mantener el mío en LyX / Sweave o doblar y solo hacer los suplementos en Sweave).

Tim
fuente
3

Buscar ejemplos y prácticas es una buena manera de aprender, pero solo quería mencionar que la reproducibilidad no solo tiene un aspecto técnico / de ejecución de script, sino también un estilo de código y un aspecto de estructuración, minimización de los efectos secundarios en las funciones principales, etc. Personalmente descubrí que El software de libro de Chambers para análisis de datos permite comprender más profundamente las técnicas que ayudan a evitar problemas de confiabilidad y reproducibilidad a nivel de código R.

zzr
fuente
2

Si todavía necesita un gran ejemplo de un análisis totalmente REPRODUCIBLE más un PAPEL, use este repositorio .

El @jscamac hizo un gran trabajo al hacer que su análisis fuera productivo y yo personalmente lo validé.

Puede aprender cómo usar funciones específicas de R como el paquete remakepara garantizar la reproducción.

Cuidado / los cálculos tardan aproximadamente una hora en completarse.

Todo está escrito y produce un papel LaTeX al final con figuras.

WojciechF
fuente