代码之家  ›  专栏  ›  技术社区  ›  aneccodeal

当以交互方式运行R时,是否可以读取命令行参数?[副本]

r
  •  2
  • aneccodeal  · 技术社区  · 10 年前

    我有一个通常通过Rscript运行的R脚本,但有时我希望能够在R中以交互方式运行它来处理一些生成的数据-问题是,它试图通过commandArgs读取命令行参数,而这在R交互式shell中似乎不起作用。我希望能够使用通常传递给脚本的命令行参数启动R shell,并在源代码脚本时让脚本读取这些参数。

    $ R arg1 arg2
    
    R version 3.1.2 (2014-10-31) -- "Pumpkin Helmet"
    Copyright (C) 2014 The R Foundation for Statistical Computing
    Platform: x86_64-pc-linux-gnu (64-bit)
    
    ...
    > args <- commandArgs(trailingOnly = TRUE)
    > args
    character(0)
    > source("myscript.R")
    ... fails because myscript.R depends on args
    

    arg1和arg2似乎没有传递到R shell中。

    1 回复  |  直到 10 年前
        1
  •  4
  •   Matt    10 年前

    如果按如下方式传递命令行参数: R --args 1 2 ,然后可以按如下方式访问它们:

    > args = commandArgs(trailingOnly=TRUE)
    > args
    [1] "1" "2"