Como era de se esperar... elegante solução... valeu mesmo Henrique!
A propósito, compartilhando com a lista aí vai:
* Solução tirada e adapatada de: http://quantitative-ecology.blogspot.com/2007/08/including-arguments-in-r-cmd-batch-mode.html.
No começo do seu script acrescente:
> args <- commandArgs(TRUE)
E mais:
> # os argumentos agora sao uma lista de vetores de caracteres
> if(length(args) == 0)
> { # testa se sao passados argumentos pelo BASH
> print("Não foram passados ARGUMENTOS") # imprime 'AVISO' e usa valores 'PADRAO'
> ## lista de valores 'PADRAO'
> arg1 <- 1 # ARG1
> arg2 <- 1 # ARG2
> arg3 <- 1 # ARG3
> } else { # se sao: atribui os valores ao script
> for(i in 1:length(args)){
> eval(parse(text = args[[i]]))
> }
> }
Esse trecho tem a função de ver quais argumentos foram passados via bash e os passa p/ o script... Caso não seja passado nenhum argumento ele "usa" os argumentos default!
Isto posto, executa-se o script de forma semelhante ao normal:
$R CMD BATCH '--args arg1=1 arg2=2 arg3=3 script.R saida.out &
abraço,
FH
A função desse trecho é verificar
Veja o help da função commandArgs()
2011/8/18 FHRB Toledo <fernandohtoledo@gmail.com>:
> _______________________________________________> Senhores,
>
> Gostaria de saber se existe uma forma elegante de rodar um script em BATCH
> passando argumentos como opção na linha de comando?
>
> Explico: tenho um script que faz uma tarefa "X", para tal no script tenho
> alguns argumentos especificados do tipo arg1 <- valorA. Entretanto queria
> rodar o mesmo escript variando o argumento parao valorB por exemplo. Na
> minha ignorância estou editando o script no valorB do arg e rodando denovo.
>
> Pois bem, existe uma forma melhor e menos tosca de se fazer isso?
>
> desde já grato,
> FH
>
> R-br mailing list
> R-br@listas.c3sl.ufpr.br
> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código
> mínimo reproduzível.
>
--
Henrique Dallazuanna
Curitiba-Paraná-Brasil
25° 25' 40" S 49° 16' 22" O
_______________________________________________
R-br mailing list
R-br@listas.c3sl.ufpr.br
https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.