2016-12-05 13 views
5

jest sposób debugowania wywołania Rscript w RStudio?Jak debugować wywołanie Rscript

Powiedz, że wywołuję RScript z wiersza poleceń, jak Rscript prog.R x y z i chcę zbadać kod w pewnym wierszu. Nie mogę po prostu uruchomić go interaktywnie w Rstudio, ponieważ nie wiem, jak przekazać argumenty.

+0

Rstudio udostępnia narzędzia do debugowania. Czy możesz napisać cały skrypt jako funkcję w R i przekazać x y z jako argumenty do tej funkcji? –

+0

@ Dinesh.hmn Uważam, że OP jest zainteresowany wywołaniem narzędzi do debugowania [tag: rstudio], gdy skrypt R jest wywoływany przez funkcję 'source'. Po wykonaniu przez ** Cmd + return ** RStudio wchodzi w tryb debugowania. Nie dzieje się tak, gdy skrypt jest wywoływany za pomocą funkcji 'source'. – Konrad

+0

Czy twój skrypt pobiera argumenty, wywołując 'commandArgs()'? Czy chcesz mieć możliwość "podrabiania" argumentów poleceń podczas wywoływania skryptu z 'source' w RStudio? – Spacedman

Odpowiedz

0

To jest to, co robię - to nie jest formalne debugowanie, ale działa dla mnie.

góry przykład prog.R skryptu:

# uncomment this section to run using Rscript from command line: 
userprefs <- commandArgs(trailingOnly = TRUE) 
x <- userprefs[1] 
y <- userprefs[2] 
z <- userprefs[3] 

# uncomment this section to run within RStudio 
cat("you forgot to comment out the troubleshooting part!") 
x <- 1 
y <- 2 
z <- 3 

Jak można rozwiązać ten scenariusz, komentarz na jedną lub druga sekcja w zależności od tego, czy jesteś w zasięgu RStudio pozyskiwania lub RScript z wiersza poleceń.