Executar um script R a partir da linha de comando

Gustavo du Mortier 30 janeiro 2023
R
  1. Opções Rscript
  2. Executar expressões simples com o parâmetro -e em Rscript
Executar um script R a partir da linha de comando

A forma mais conveniente de executar scripts R a partir da linha de comando é utilizar Rscript, um front-end alternativo para executar código R. O Rscript é capaz de executar código R a partir de diferentes interpretadores de comandos, tais como um script bash no Linux ou uma tarefa de Programador de Tarefas no Windows.

Para utilizar Rscript, é necessário executar o comando Rscript a partir de uma linha de comando acompanhada do nome do script a executar, que é normalmente um ficheiro .r. Para o fazer, tem de conhecer o caminho tanto do executável Rscript como do script R. No Windows, o caminho para o executável Rscript normalmente é:

C:\Program Files\R\R-3.4.3\bin\Rscript.exe

Para experimentar o Rscript, pode escrever o seguinte script e guardá-lo com o nome SayHi.r na pasta C:\scripts:

SayHi <- function(name) {
  sprintf("Hi, %s", name);
}

SayHi("Dave")

Depois pode executá-lo a partir da linha de comando navegando para a pasta onde o ficheiro Rscript.exe está instalado e executando o seguinte comando:

Rscript.exe c:\scripts\SayHi.r

Resultado:

[1] "Hi, Dave"

Opções Rscript

Todas as opções de Rscript começam com --. Pode utilizar Rscript com a opção --help para obter instruções detalhadas sobre como utilizar o comando, enquanto o parâmetro --version mostra a versão do Rscript. Se quiser obter feedback sobre o que o Rscript faz quando executa o seu script, pode utilizar a opção --verbose.

A opção --default-packages=list (onde list é uma lista de nomes de pacotes separados por vírgulas) determina os pacotes carregados na inicialização, definindo a variável de ambiente R_DEFAULT_PACKAGES. Se a opção --default-packages=list não for utilizada, o Rscript verifica uma variável de ambiente chamada R_SCRIPT_DEFAULT_PACKAGES. O conteúdo desta variável tem precedência sobre R_DEFAULT_PACKAGES.

Executar expressões simples com o parâmetro -e em Rscript

Em vez de especificar um ficheiro de script para executar, se quiser executar expressões simples em R, pode fazê-lo especificando-as na mesma linha de comando com o comando Rscript, utilizando o parâmetro -e. Por exemplo, se quiser listar as 4 primeiras linhas do array de dados Iris sem criar um ficheiro script, pode executar o seguinte a partir da linha de comando:

Rscript -e "head(iris,4)"

Resultado:

 Sepal.Length Sepal.Width Petal.Length Petal.Width Species
1          5.1         3.5          1.4         0.2  setosa
2          4.9         3.0          1.4         0.2  setosa
3          4.7         3.2          1.3         0.2  setosa
4          4.6         3.1          1.5         0.2  setosa

Para mais informações sobre o comando Rscript, verificar a documentação Rscript oficial.