Есть ли удобный способ автоматического анализа аргументов командной строки, переданных в R-скрипты?
Что-то вроде perl Getopt::Long
?
Есть ли удобный способ автоматического анализа аргументов командной строки, переданных в R-скрипты?
Что-то вроде perl Getopt::Long
?
В CRAN есть три пакета:
argparse
и json
(или simplejson
).Обновление
Самый простой способ - использовать commandArgs(). Пример. Сохраните код ниже как "options.R":
options <- commandArgs(trailingOnly = TRUE)
options
Запуск с использованием "Rscript options.R x y z". Результат:
[1] "x" "y" "z"
то есть. список из 3 элементов, по одному на аргумент.
Просто чтобы дополнить ответ Rscript:
[email protected]:~$ r -e 'print(argv)' flim flam flom
[1] "flim" "flam" "flom"
[email protected]:~$
Мы просто используем argv
в littler. Мне повезло с getopt, более старым из двух доступных пакетов синтаксического анализа.
Могу ли я ввести ArgumentParser
в Xmisc пакет? Это синтаксический анализатор командной строки, вдохновленный Python argparse
, но он не является Python-бесплатным.
http://cran.r-project.org/web/packages/Xmisc/vignettes/Xmisc-ArgumentParser.pdf