class: title-slide, center, middle background-image: url(https://images.unsplash.com/photo-1485254767195-60704c46702e?ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&ixlib=rb-1.2.1&auto=format&fit=crop&w=1051&q=80) background-size: cover # <span style=" font-weight: bold; color: white !important;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: #1d3557 !important;font-size: 60px;" >Reproducibilidad</span> <br> <h2><span style=" font-weight: bold; color: white !important;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: #264653 !important;" >Miriam Lerma</span></h2> <h3><span style=" font-weight: bold; color: white !important;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: #0A121F !important;" >Mayo 2021</span></h3> --- class: inverse # Intro - [Reproducibilidad](#repro) - [Publicaciones reproducibles](#pub) - [Manuscritos reproducibles](#MS) ## Ustedes - Quieren crear proyectos reproducibles - Mejorar su seguimiento de proyectos - Mejorar el ciclo de trabajo en su laboratorio ## Responder en el chat 💬 - Han querido replicar análisis de algún articulo ya publicado y se preguntaron como lo hicieron? - Les ha pasado que a seguir los pasos de alguna tesis o articulo se dieron cuenta que no todos los métodos estaban descritos? --- class: inverse ## Créditos & Recursos Lecturas - [
The turing way](https://the-turing-way.netlify.app/welcome)<br> - [
Articulos reproducibles](https://frodriguezsanchez.net/publication/rodriguez-sanchez-ecosistemas-2016/)<br> Videos en español - Daniela Ballari [
ReproHack](https://www.youtube.com/watch?v=Hvrb2b7v93w&t=732s)<br> - Francisco Rodríguez-Sánchez [
ReproHack](https://www.youtube.com/watch?v=TKhV3w467RI)<br> En ingles - [
RLadiesJohannesburg](https://www.youtube.com/watch?v=tSrf4n7DFYI) - [
Matt Dray](https://www.rostrum.blog/2020/01/22/repro-three-things/) - [
Experimenting with reproducibility](https://academic.oup.com/gigascience/article/7/7/giy077/5046609) - [
r3 course](https://r-cubed.rostools.org/lecture-slides.html#collaboration-and-teamwork) Imagenes - Portada [Unsplash by Joel Filip](https://unsplash.com/@joelfilip) - Imagenes de The turing test creadas por Scriberia para la comunidad The Turing Way y se usa bajo una licencia CC-BY. --- name: repro class: center, middle, inverse # 1. Reproducibilidad --- ## 1.1. Reproducibilidad **Reproducibilidad computacional** es que otra persona pueda ejecutar el código que hemos creado y tenga los mismos resultados Esto incluye a: - Científicos de otras instituciones - Colaboradores - Nosotros mismos <img src="https://raw.githubusercontent.com/MiriamLL/Curso_CIAD/main/Figuras/100turingway.svg" height="300" style="display: block; margin: auto;" /> --- ## 1.2. Reproducibilidad La reproducibilidad tiene varias dimensiones, de acuerdo a - si usamos los mismos datos o datos diferentes, - si usamos el mismo codigo o lo adaptamos. <img src="https://raw.githubusercontent.com/MiriamLL/Curso_CIAD/main/Figuras/ReproducibleMatrix.jpg" height="200" style="display: block; margin: auto;" /> - **Reproducible**: mismos datos deben dar el mismo resultado. - **Replicable**: mismos análisis pero con diferentes datos dan resultados cualitativamente similares. - **Robusto**: los mismos datos pero diferente análisis, dan resultados similares. - **Generalizable**: diferentes datos y análisis para entender que los resultados no son dependientes de ese set de datos en particular y de ese análisis en particular. Fuente: [The turing way](https://the-turing-way.netlify.app/_images/ReproducibleMatrix.jpg) --- ## 1.3. Reproducibilidad Recordemos que: <br> El método científico esta sustentado en dos pilares: **reproducibilidad** y refutabilidad <br> La reproducibilidad implica que se pueda repetir el experimento, en cualquier lugar y persona para verificar que los resultados obtenidos sean verídicos.<br> **Desafortunadamente**, por muchos años se ha perdido el acceso a datos y métodos<br> **Afortunadamente**, estamos en una época de cambio de paradigmas<br> <img src="https://www.turing.ac.uk/sites/default/files/inline-images/Fair%20principles.jpg" height="300" style="display: block; margin: auto;" /> --- ## 1.4. Credibilidad Al hacer nuestro trabajo reproducible.<br> Podemos: - Evitar desastres al permitir detección de errores - Escribir mas fluido - Asegurar la continuidad - Mejorar la credibilidad/transparencia <img src="https://raw.githubusercontent.com/MiriamLL/Curso_CIAD/main/Figuras/reasons-reproducibility.png" height="250" style="display: block; margin: auto;" /> Por ejemplo, evitando casos como: [revistas retiran articulos sobre COVID debido a falta de integridad en los datos](https://www.sciencemag.org/news/2020/06/two-elite-medical-journals-retract-coronavirus-papers-over-data-integrity-questions) --- ## 1.5. Recomendaciones Para crear un proyecto reproducible hay que: - Agregar comentarios y escribir código en forma ordenada. <br> Ver [programacion literaria, un concepto de 1984](http://www.literateprogramming.com/knuthweb.pdf) - Usar código legible - Usar directorios relativos - Usar control de versiones <br> Esto evita redundancias: no intentes lo mismo muchas veces <img src="https://the-turing-way.netlify.app/_images/reproducibility.jpg" height="300" style="display: block; margin: auto;" /> --- ## 1.6. Supervisores Como **supervisor** al tener proyectos reproducibles, se puede: - Evaluar como se procesaron los datos - Detectar errores - Facilitar la escritura y edición - Facilitar el ciclo de investigación Tener un flujo de trabajo reproducible en un laboratorio ahorra tiempo para los investigadores, estudiantes y colaboradores. Aunque hay que invertir tiempo en generar proyectos reproducibles, a la larga esto mejora la productividad <img src="https://the-turing-way.netlify.app/_images/communication.jpg" height="250" style="display: block; margin: auto;" /> --- ## 1.7. Tesistas Como **tesista** entrar a un laboratorio que tenga proyectos reproducibles, permite que: - Inicien con análisis base - Complementen, actualicen y mejoren el código - No se pierdan en el universo de analisis y paquetes - Tengan más confianza en los resultados Trabajar en un laboratorio con flujos de trabajo reproducible, ahorra tiempo y permite invertir esfuerzos en mejorar el código <img src="https://ekaroune.github.io/The-Open-Archaeobotanist/asset/img/evolving_science_pic.jpg" height="300" style="display: block; margin: auto;" /> --- name: pub class: title-slide, center, middle, inverse # 2. Publicaciones reproducibles --- ## 2.1. Publicaciones .pull-left[ De 1500 investigadores que intentaron reproducir experimentos publicados, 70% fallaron. Por lo que la mayoría concluyó que existe una **crisis en la reproducibilidad** - [
Ted: crisis reproducibilidad](https://www.youtube.com/watch?v=FpCrY7x5nEE) ] .pull-right[ <img src="https://www.nature.com/news/polopoly_fs/7.36716.1469695923!/image/reproducibility-graphic-online1.jpeg_gen/derivatives/landscape_630/reproducibility-graphic-online1.jpeg" height="300" style="display: block; margin: auto;" /> ] .right[Fuente: [nature](https://www.nature.com/news/1-500-scientists-lift-the-lid-on-reproducibility-1.19970)] --- ## 2.2. Disciplinas .pull-left[¿Que disciplinas son las más reproducibles? .right[<h1> 😑➡️ </h1>] .right[<h1> 😍⬇️ </h1>] **Afortunadamente** existen algunas iniciativas que apoyan y consultan para mejorar la reproducibilidad - [
ReproHack](https://reprohack.github.io/reprohack-hq/)<br> - [
rOpenScience](https://ropensci.org/)<br> ] .pull-right[ <img src="https://www.nature.com/news/polopoly_fs/7.36717.1464174452!/image/reproducibility-graphic-online2.jpg_gen/derivatives/landscape_630/reproducibility-graphic-online2.jpg" height="400" style="display: block; margin: auto;" /> .center[Fuente: [nature](https://www.nature.com/news/1-500-scientists-lift-the-lid-on-reproducibility-1.19970)] ] --- ## 2.3. Código antigüo .pull-left[ Curiosamente, la poca reproducibilidad no solo aplicaba para resultados de otros científicos si no también incluía **sus propios resultados**. Falta de documentación y programas obsoletos mostraron que era muy difícil reproducir incluso sus propios resultados de hace **10 años**. ] .pull-right[ - [Ten years reproducibility challenge](https://rescience.github.io/ten-years/) <img src="https://media.nature.com/w1172/magazine-assets/d41586-020-02462-7/d41586-020-02462-7_18291680.jpg" height="250" /> Fuente: [nature](https://www.nature.com/articles/d41586-020-02462-7) ] --- ## 2.4. Reproducibilidad en ecología Hay poca reproducibilidad en ecología ([Culina 2020](https://journals.plos.org/plosbiology/article?id=10.1371/journal.pbio.3000763)) - **73%** de los artículos publicados (entre 2015 y 2019, n = 346) no proveen código - **5%** no todo el código - **1%** no proveen datos - **21%** casi reproducible (dentro de los cuales 26% no usa software libre, 56% no provee todos los datos, y 46% no reportan la version del software) <img src="https://media.eurekalert.org/multimedia_prod/pub/web/238857_web.jpg" height="300" style="display: block; margin: auto;" /> .right[ Fuente: [@Culina](https://twitter.com/antica_c/status/1288382890636709888)] --- ## 2.5. Barreras .pull-left[Barreras: - Desinformación - Tradición - Falta de entrenamiento - Falta de reconocimiento Miedo a: - Robo de ideas - No ser acreditado - Errores que lleven a humillación ] .pull-right[ <img src="https://pbs.twimg.com/media/EjQ5HsYXkAAqXmj.jpg" height="250" /> ] [
Tenemos la tecnologia, depende de nosotros implementarlo ](https://blog.scielo.org/es/2017/09/27/tenemos-la-tecnologia-para-salvar-la-revision-por-pares-ahora-depende-de-nuestras-comunidades-en-implementarlo-publicado-originalmente-en-el-blog-lse-impact-of-social-sciences-en-septiembre/#.YH1h-j-xWUk) --- name: MS class: center, middle, inverse # 3. Manuscritos reproducibles --- ## 3.1. Manuscritos reproducibles .center[<h4>Texto + Datos + Código</h4>] Pero existe un gradiente... <img src="https://raw.githubusercontent.com/Pakillo/writing-reproducible-manuscripts/master/images/Fig1.jpg" height="300" style="display: block; margin: auto;" /> .right[ Fuente: [Pakillo](https://github.com/Pakillo/writing-reproducible-manuscripts) ] --- ## 3.2. Básica Texto + Datos + Código Almacenados y accesibles en **archivos permanentes** - ✔️ Zenodo, dryad - ❌ Github --- ## 3.3. Datos - En formato abierto:<br> ✔️csv, txt <br> ❌ excel<br> -- - Identificador permanente (DOI) - Código de depuración (limpieza) - README (explicando: quien, como, cuando, donde se colectaron los datos). Evita: **variables no localizadas** -- - Licencias<br> Las más comunes son:<br> **CCO** Creative Commons: no condiciones<br> **CC-BY** Uso con atribución<br> **MIT** para software<br> Leer más: [Tierney & Ram 2020](https://arxiv.org/abs/2002.11626) --- ## 3.4. Código - En formato abierto:<br> ✔️ Script en R o Rmd - Identificador permanente (DOI)<br> - Licencias (CCO, CC-BY)<br> - README (incluir sessionInfo()). <br> Evita problemas con actualización de **librerías** [Leer más: Eglen et al 2016](https://doi.org/10.1038/nn.4550) --- ## 3.5. Ejercicios En equipo 👯 - **Replicar** análisis de otro equipo: [Equipo 1](https://github.com/xangeldaniel/prueba.git), [Equipo 2](https://github.com/denniselga/Prueba), [Equipo 3](https://github.com/lisshern/Repositorio1). - **Reproducir** análisis para obtener resultados de pingüinos de Papúa. - Subir nuevo repositorio a github, de preferencia incluyendo README. - Al final reflexionar que podrían incluir en sus futuras instrucciones para facilitar reproducibilidad. .panelset[ .panel[.panel-name[Con git] Si ya tienen **git** instalado. [Clonar repositorio.](https://miriamll.github.io/Curso_CIAD/GitGithubZenodo#34) <img src="https://raw.githubusercontent.com/MiriamLL/Curso_CIAD/main/Figuras/Git03.png" height="200" style="display: block; margin: auto;" /> ] .panel[.panel-name[Sin git] Si no tienen **git** instalado. Descargar zip. <img src="https://raw.githubusercontent.com/MiriamLL/Curso_CIAD/main/Figuras/Git11.png" height="200" style="display: block; margin: auto;" /> ] .panel[.panel-name[README] - Quien, como y porque se usaron estos datos y análisis ] ] --- name: paquete # 4. Paquetes .pull-left[**Rmarkdown** - Todo esta contenido por lo que permite tener continuidad en los análisis **Fertile** - Revisa continuamente que el articulo sea reproducible. Por ejemplo, si usas una ruta absoluta te va a sugerir que uses una ruta relativa **Checkpoint** - Permite regresar a algún punto de tu análisis .right[... hay muchos más] ] .pull.right[ <img src="https://the-turing-way.netlify.app/_images/file-collection.jpg" height="400" style="display: block; margin: auto;" /> Fuente de la imagen [The Turing way](https://the-turing-way.netlify.app/afterword/afterword.html) ] --- class: left, inverse # Contacto Recapitulando - [Reproducibilidad](#repro) - [Publicaciones reproducibles](#pub) - [Manuscritos reproducibles](#MS) <br> <br> Para dudas, comentarios y sugerencias: - Escríbeme a miriamjlerma@gmail.com <br> <br> .right[Este material esta accesible y se encuentra en <br> mi [
github](https://github.com/MiriamLL/Curso_CIAD/) y mi [
página](https://www.miriam-lerma.com) .center[ <h3>
[Volver ](https://www.miriam-lerma.com/teaching.html) ]]