[R-es] Pregunta sobre RMarkdown

Francisco Rodriguez Sanchez f.rodriguez.sanc en gmail.com
Jue Jul 2 18:24:46 CEST 2015


Hola Francisco,

Es muy fácil generar múltiples informes basados en un único documento 
Rmarkdown. Simplemente ejecuta un código similar a este:

library(rmarkdown)

dataset <- read.csv("your_dataset.csv")

n.ayunt <- 100    # número de ayuntamientos (también se podría 
identificar a partir del dataset)

for (i in 1:n.ayunt){
ayunt <- dataset$ayuntamiento[i]
render(input = "myRmddoc.Rmd", output_file = paste0(ayunt, ".html"))
}

El documento 'myRmddoc.Rmd' debe usar simplemente 'ayunt' como datos. El 
for loop hará que ayunt sea diferente cada vez.

Más info aquí: 
http://stackoverflow.com/questions/28368150/automatically-generated-reports-using-rmarkdown

Suerte!

Paco





El 02/07/2015 a las 16:24, Francisco Rodríguez escribió:
> Hola Carlos, qu� tal
> Me interesa el c�mo hacer el paso 2, es decir, me valdr�a que con un c�digo R pueda llamar al fichero Rmd, y que me permitieseguardar el html que genera con un nombre que yo mismo pudiese controlar. Trato de ver si encuentro algo, pero si me das alguna indicaci�n lo pruebo entre hoy y ma�ana
> Un saludo y gracias
>
>
>> Date: Thu, 2 Jul 2015 16:16:52 +0200
>> From: cgb en datanalytics.com
>> To: r-help-es en r-project.org
>> Subject: Re: [R-es] Pregunta sobre RMarkdown
>>
>> Hola, �qu� tal?
>>
>> Lo que puedes hacer es que tu fichero Rmd lea el par�metro de un
>> fichero externo. Entonces, creas un script que:
>>
>> 1) Actualice el valor del �ndice en ese fichero externo.
>> 2) Compile el Rmd y le d� el nombre que te interesa.
>> 3) Vuelva a (1).
>>
>> Salud,
>>
>> Carlos J. Gil Bellosta
>> http://www.datanalytics.com
>>
>>
>>
>>
>> El d�a 2 de julio de 2015, 16:08, David Duncan
>> <dhduncan1975 en gmail.com> escribi�:
>>> Francisco,
>>>
>>> �As� que todo que quieres imprimir a html o pdf sea contenido dentro de un
>>> solo chunk?  Quiz�s por mis limitaciones en el espa�ol no veo muy claro si
>>> tu problema pertenece espec�ficamente a markdown o no.
>>>
>>> Yo busco una soluci�n parecida en ingl�s el otro d�a, porque quiero generar
>>> y guardar en archivo conjuntos de datos ligeramente distintos para mis
>>> estudiantes (los que son mayoritariamente copiones).  De modo que
>>> conseguir� este tema, y te aviso si encuentro algo por StackOverflow.
>>>
>>>
>>>
>>> 2015-07-02 8:33 GMT-05:00 Francisco Rodr�guez <fjroar en hotmail.com>:
>>>
>>>> Hola Carlos, creo que no resuelve el problema, de hecho otra de las cosas
>>>> que no he conseguido a�n es generar sencillamente el PDF (con los html para
>>>> generarlos 1 a 1 sin pb).
>>>> Siempre suelo obtener el error. Esto me aparece al ejecutar
>>>> myReport$export():
>>>> You may install Pandoc easily with "install.pandoc()" from the "installr"
>>>> package.Error in Pandoc.convert(fp, format = .self$format, proc.time =
>>>> as.numeric(proc.time() -  :   It seems Pandoc is not installed or path of
>>>> binary is not found.
>>>>
>>>> Es cierto que el ordenador que estoy usando es el del trabajo y seguro que
>>>> por tema de antivirus puede que haya alg�n problema (adem�s de que mi
>>>> torpeza), pero tengo instalado el Pandoc, y he reiniciado la m�quina y
>>>> estoy actualizado a la �ltima versi�n de R y RStudio
>>>> Adem�s al seguir el ejemplo que aparece donde indicas, me aparece el
>>>> siguiente mensaje cuando ejecuto por ejemplo myReport$add(matrix(5,5,5));
>>>> Dicho error es: Error: cannot allocate buffer
>>>> Probar� desde mi casa a si pillo algo de tiempo y ya os cuento, pero sobre
>>>> el problema inicial creo que aunque resolviese los anteriores errores a�n
>>>> quedar�a abierto porque en no consigo ver c�mo a partir del ejemplo pasar a
>>>> lo que quiero.
>>>> Un saludo y en todo caso muchas gracias, estoy mirando cosas por mi cuenta
>>>> a ver si lo resuelvo
>>>>
>>>>
>>>> Date: Thu, 2 Jul 2015 12:02:57 +0200
>>>> Subject: Re: [R-es] Pregunta sobre RMarkdown
>>>> From: cof en qualityexcellence.es
>>>> To: fjroar en hotmail.com
>>>> CC: r-help-es en r-project.org
>>>>
>>>> Hola Francisco,
>>>>
>>>> Puedes utilizar el paquete "pander" para hacer lo que buscas.
>>>> Es equivalente a knitr para generar c�digo markdown que luego con Pandoc
>>>> (lo tienes que tener instalado en tu equipo) genere el pdf o el html final.
>>>>
>>>> Como ejemplo mira en su p�gina:
>>>>
>>>> http://rapporter.github.io/pander/
>>>>
>>>> la secci�n "Live report generation" en la que aparece detallado y
>>>> comentado un ejemplo.
>>>> Puedes tener un programa "R" que de forma din�mica genere v�a comandos
>>>> "pander" cada uno de los informes que quieres.
>>>>
>>>> Saludos,
>>>> Carlos Ortega
>>>> www.qualityexcellence.es
>>>>
>>>> El 2 de julio de 2015, 9:43, Francisco Rodr�guez <fjroar en hotmail.com>
>>>> escribi�:
>>>> Hola buenos dias, tengo una duda con RMarkdown que no se si tiene facil
>>>> apanio.
>>>>
>>>> Resulta que para un trabajo que estoy haciendo necesito que se ejecute el
>>>> siguiente codigo n-veces
>>>>
>>>> ```{r echo = FALSE}
>>>>
>>>>
>>>>
>>>> ANIO_ACTUAL<-2015
>>>>
>>>>
>>>>
>>>> i=1
>>>>
>>>>
>>>>
>>>> CONFIGURACION <-read.csv("D:\\  �  \\CONFIGURACION.csv",sep
>>>>
>>>> = ",")
>>>>
>>>>
>>>>
>>>> AYUNT <- as.character(CONFIGURACION$AYUNTAMIENTO[i])
>>>>
>>>>
>>>>
>>>> ```
>>>>
>>>>
>>>>
>>>> ##Situaci�n de `r AYUNT`
>>>>
>>>>
>>>>
>>>> Al ejecutar este c�digo genera un fichero html que podemos denominar:
>>>>
>>>>                                        Ejemplo.html
>>>>
>>>>
>>>>
>>>> Tal y como est� escrito el programa, si quiero ejecutar para el siguiente
>>>> ayuntamiento tengo que hacer lo siguiente:
>>>>
>>>> ```{r echo = FALSE}ANIO_ACTUAL<-2015i=2CONFIGURACION <-read.csv("D:\\  �
>>>> \\CONFIGURACION.csv",sep = ",")AYUNT <-
>>>> as.character(CONFIGURACION$AYUNTAMIENTO[i])```##Situaci�n de `r AYUNT`
>>>>
>>>>
>>>>
>>>> Es decir, cambio el parametro i y tengo la generaci�n de un nuevo html que
>>>> machaca el anterior:
>>>>
>>>>                                         Ejemplo.html
>>>>
>>>> Mi pregunta es si puedo hacer algo del tipo que me permita, dentro del
>>>> codigo r incrustado en el markdown, ir cambiando el parametro i como si
>>>> fuera un bucle, de modo que no lo tenga que hacer manualmente y que ademas
>>>> para cada caso me genere un html distinto, es decir algo del tipo:
>>>>
>>>>                                        Ejemplo1.html
>>>>                Ejemplo2.html
>>>>
>>>> Un saludo y muchas gracias
>>>>
>>>>
>>>>
>>>>          [[alternative HTML version deleted]]
>>>>
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>>
>>>> R-help-es mailing list
>>>>
>>>> R-help-es en r-project.org
>>>>
>>>> https://stat.ethz.ch/mailman/listinfo/r-help-es
>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Saludos,
>>>> Carlos Ortega
>>>> www.qualityexcellence.es
>>>>
>>>>          [[alternative HTML version deleted]]
>>>>
>>>>
>>>> _______________________________________________
>>>> R-help-es mailing list
>>>> R-help-es en r-project.org
>>>> https://stat.ethz.ch/mailman/listinfo/r-help-es
>>>>
>>>>
>>>          [[alternative HTML version deleted]]
>>>
>>> _______________________________________________
>>> R-help-es mailing list
>>> R-help-es en r-project.org
>>> https://stat.ethz.ch/mailman/listinfo/r-help-es
>> _______________________________________________
>> R-help-es mailing list
>> R-help-es en r-project.org
>> https://stat.ethz.ch/mailman/listinfo/r-help-es
>   		 	   		
> 	[[alternative HTML version deleted]]
>
>
>
> _______________________________________________
> R-help-es mailing list
> R-help-es en r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es

-- 
Dr Francisco Rodriguez-Sanchez
Integrative Ecology Group
Estacion Biologica de Doñana - CSIC
Avda. Americo Vespucio s/n
41092 Sevilla (Spain)
http://bit.ly/frod_san


	[[alternative HTML version deleted]]



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