--- 
title: "Investigación reproducible"
author: "Guillermo Ayala Gallego"  
date: today
address: Departamento de Estadística e I.O. Universidad de Valencia  
format: 
   revealjs:  
      scrollable: true
      echo: true
      embed-resources: true  
   pdf:
       toc: true
       number-sections: false
       colorlinks: true
---

##  ¿Qué es investigación reproducible?

- Estamos acostumbrados a que los investigadores en sus publicaciones comenten
los resultados obtenidos en sus investigaciones.

- Han obtenido unos datos, los han analizado y, finalmente, los han
interpretado y discutido.

- Hemos de creer que han producido los datos correctamente,
que han aplicado un tratamiento adecuado (que han hecho
lo que dicen que han hecho es un mínimo) y que, finalmente, la interpretación
de los resultados de las técnicas utilizadas es correcta.

-  Si no tenemos los datos, el código y la
interpretación: ¿cómo sabemos que el trabajo es correcto? 

- Es una cuestión de fe. 

##   

- ¿Dónde están los datos?  

- ¿Qué análisis de los datos han realizado? Deme el código.  

- La interpretación es lo único que tenemos: la publicación científica

- Por investigación reproducible entendemos procedimientos que permitan 
  **reproducir** la investigación completa.

- Personalmente añadiría que los distintos elementos han de ser totalmente 
  libres.
  
## Documento dinámico   

- [Donald Knuth](https://www-cs-faculty.stanford.edu/~knuth/)  
- [Yihui Xie](https://yihui.org/)  
- Datos del documento [YAML](https://en.wikipedia.org/wiki/YAML)
 o en [LaTeX](https://en.wikipedia.org/wiki/LaTeX)  
- Chunks de texto y de código intercalados.  
- Los chunks de texto usualmente en Markdown o  en LaTeX.  
- Los chunks de código en diferentes lenguajes (aquí nos interesan
**R** y **Bash**.  




## Herramientas básicas

- Markdown  
    1. [Markdown](http://daringfireball.net/projects/markdown/syntax)  
    2. [Pandoc Markdown](http://pandoc.org/MANUAL.html#pandocs-markdown)  

- Pandoc  
    1. Es un programa que convierte textos escritos en distintos lenguajes de
	marcas.  
    2. [Pandoc](https://pandoc.org/)  

##  

- knitr  
    1. Desarrollado por  Yihui Xie.
    2. Nos permite trabajar con Markdown y LaTeX en chunk de texto y
	con R como lenguaje de programación.
    3. [knitr](https://yihui.org/knitr/)

- RMarkdown  

    1. Combinamos R con Markdown.
	2. [rmarkdown](http://rmarkdown.rstudio.com/)

- [Quarto](https://quarto.org/)  
    1. Es una evolución de RMarkdown.  
    2. Permite trabajar con distintos lenguajes de programación.  
	3. Aquí nos interesan:  
	    1. [R](https://www.r-project.org/)   
        2. [Bash](https://en.wikipedia.org/wiki/Bash_(Unix\_shell))

## Entornos de desarrollo  

- [RStudio](https://posit.co/)  

    1. Es la opción más sencilla  
    2. Muy bueno para RMarkdown y Quarto  
    3. Es mi opción para docencia  
	
- [emacs](https://www.gnu.org/software/emacs/)  
    1. [Emacs Speaks Statistics](https://ess.r-project.org/)
    2. Modo [polymode](https://github.com/vitoshka/polymode) para Markdown
    3. Modo [quarto-mode](https://github.com/quarto-dev/quarto-emacs) 
		para Quarto
    4. En Debian/Ubuntu tenemos el paquete
[quarto](https://quarto.org/docs/get-started/index.html)
    5. Es mi opción para investigación   

