[R-es] knitr + markdown: simplemente útil

José Antonio Palazón Ferrando palazon en um.es
Mar Mayo 1 14:59:24 CEST 2012


Hola:

Ya se ha comentado aquí algo sobre knitr, creo que la
alternativa a Sweave (al que le tengo un gran cariño).

La cosa va muy bien y lejos, os comento muy breve
y os adjunto dos ficheros para muestra.

Estoy buscando una forma de escribir potente y
ágil para que los alumnos trabaje al cien por cien
sin necesidad de aprender LaTeX (aqltugc).
Para eso había encontrado markdown pero
¿cómo hacer investigación reproducible con
markdown?

Bien Yihui Xie, autor del paquete knitr, lo ha
conseguido, alucino. Ved el ejemplo

Para mas información sobre markdown daos una vuelta por:
http://servbiob.inf.um.es/proyectos/public/projects/markdown-umu/wiki

Espero que os sea útil, a los que trabajen con rails seguro.



-- 
____________________________________________________________
José Antonio Palazón Ferrando
Profesor Titular. Departamento de Ecología e Hidrología.
Facultad de Biología. Universidad de Murcia.
Campus Universitario de Espinardo
30100 MURCIA-SPAIN
Telf: +34 968 36 49 80
Fax : +34 968 36 39 63
Email: palazon en um.es



------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: basico.pdf
Type: application/pdf
Size: 127678 bytes
Desc: no disponible
URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20120501/f08d3c60/attachment-0001.pdf>
------------ próxima parte ------------
% Uso de R con markdown mediante `knitr` 
% Original de Yihui Xie modificado para R-es
% [Version 0.5](http://cran.r-project.org/web/packages/knitr/index.html)


# Alucinane

Pedes utilizar markdown --lenguaje de marcas mínimo,
ágil, preciso y eficiente-- para escribir e incrustar
_chunks_ de R al vuelo, sólo tienen que ser marcados
como código fuente, es decir, mediante el código:

    ``` {r uno}
    (1:10)^2
    ```
obtenemos:

``` {r uno}
(1:10)^2
````

Si desamos un gráfico:

    ``` {r dos, echo=FALSE}
    hist(rnorm(100e4))
    ````

``` {r dos, echo=FALSE}
hist(rnorm(100e4))
````


Procedimiento para trabajar:

1. Preparar el documento base con extensión `.Rmd` con nuestro 
   editor fa**v**or**i**to
1. Procesar en R mediante la función `knitr()` el fichero  
       knit("fichero.Rmd")
1. Postprocesar el fichero producido, extensión `md` mediante:
   * `pandoc -s --toc fichero.md  -o fichero.html`
   * si se desea puede utilizarse la extensión `.tex` en la salida
     para un fichero LaTeX, o cualquier otra de las admitidas
     por `pandoc`: `rtf`, `.odt`, ...


# Ejemplo propuesto por Y. Xie


## Preparación

`r opts_chunk$set(fig.width=5, fig.height=5, fig.path='')`
This is a minimal example of using **knitr** with in HTML pages. I am actually
using markdown here since it is more convenient in GitHub.

## Adelante

First, the input file was named as `knitr-minimal.Rmd`
([source](https://github.com/yihui/knitr/blob/master/inst/examples/knitr-minimal.Rmd)),
and **knitr** will automatically determine the output filename to be
`knitr-minimal.md` (`*.Rmd --> *.md`).

I used the code below to make sure **knitr** writes correct URL's for my images.

``` {r setup}
opts_knit$set(base.url='https://github.com/yihui/knitr/raw/master/inst/examples/')
````

## Calculado

* Now we write some code chunks in this markdown file:

``` {r}
## a simple calculator
1+1
## boring random numbers
set.seed(123)
rnorm(5)
````

* We can also produce plots:

``` {r md-cars-scatter, message=FALSE}
library(ggplot2)
qplot(hp, mpg, data=mtcars)+geom_smooth()
````

So no more hesitation on using GitHub and **knitr**! You just write a minimal
amount of code to get beautiful output on the web.




Más información sobre la lista de distribución R-help-es