W jaki sposób można uruchomić skrypt R, zmuszając sesję do interakcji. Dokumenty w ?interative
mówią, że kontrolują to --ess
i --interactive
, ale nie widzę żadnego efektu.Wymuszanie sesji Interactive R
Windows:
C:\Program Files\R\R-3.0.1\bin>R -e "interactive()" --ess -s
[1] FALSE
Mac:
$ R -e "interactive()" --interactive -s
[1] FALSE
jakieś przemyślenia?
EDYTOWANIE: Przypuszczam, że może zhackować podstawową przestrzeń nazw, która może działać dla niektórych rzeczy (jak install.packages). Ale to słaba wymówka rozwiązania ...
$ R -e "unlockBinding('interactive',as.environment('package:base'));assign('interactive',function() TRUE,envir=as.environment('package:base'));base::interactive()" --interactive -s
[1] TRUE
Dlaczego trzeba uruchomić skrypt, w którym 'interactive()' jest prawdziwe? –
Jeśli potrzebujesz danych wejściowych od użytkownika, możesz użyć 'file (" stdin ")'. To jest inne niż użycie 'stdin()', które zostanie pominięte podczas uruchamiania skryptu. –
@MatthewPlourde: Pojawi się kilka innych rzeczy, takich jak domyślne urządzenia graficzne, a co nie. –