2015-02-13 19 views
6

In sintesi, sto usando il mio script 'Graphs.R' su 'input_file1.txt' in RStudio per creare un Rmd che poi metto a lavorare in html. Vorrei automatizzare questo processo per eseguire più file sulla riga di comando.chiama RMarkdown sulla riga di comando utilizzando a.R che ha passato un file

Finora, posso ottenere il rscript per l'esecuzione su riga di comando utilizzando:

rscript Graphs.R input_file1.txt

so anche che posso creare un file .RMD utilizzando:

rscript -e rmarkdown :: render (Graphs.R)

Tuttavia, vorrei fare quanto segue:

rscript -e rmarkdown :: render ('Graphs.R input_file1.txt', 'output_file.Rmd')

sono lì qualsiasi idee come come fare questo?

+0

Non è chiaro cosa stai cercando di fare. Qual è il risultato del primo script? – tmpname12345

+0

Graphs.R crea tabelle e grafici dei dati in 'input_file1.txt' ad esempio, kable (df) e alcuni grafici a barre con tabelle inserite per fornire statistiche di riepilogo per i dati. – user1234579

risposta

9

Non è del tutto chiaro cosa si stia tentando di fare. Sembra che tu abbia un file di testo che deve essere convertito in un Rmd da uno script R (perché non è solo un Rmd per cominciare?) E poi vuoi rendere il Rmd. È possibile farlo eseguendo questi comandi nel terminale:

Rscript Graphs.R 
Rscript -e "rmarkdown::render('output_file.Rmd')" 

Il primo comando esegue il file Graphs.R che genera presumibilmente output_file.Rmd. Il secondo comando esegue un one-liner che unisce output_file.Rmd in output_file.html.

Se si desidera leggere gli argomenti della riga di comando in un file R, provare? commandArgs.

args <- commandArgs(trailingOnly = TRUE) 

Vedere anche questo Stack Overflow question.