首页 > 代码库 > R语言使用命令行参数

R语言使用命令行参数


args_test.R 代码如下:

Args <- commandArgs()
cat("Args[1]=",Args[1],"\n")
cat("Args[2]=",Args[1],"\n")
cat("Args[3]=",Args[3],"\n")
cat("Args[4]=",Args[4],"\n")
cat("Args[5]=",Args[5],"\n")
cat("Args[6]=",Args[6],"\n")
cat("Args[7]=",Args[7],"\n")

运行如下:
Rscript args_test.R AAA BBB

结果如下:

Args[1]= /usr/local/lib64/R/bin/exec/R
Args[2]= /usr/local/lib64/R/bin/exec/R
Args[3]= --no-restore
Args[4]= --file=args_test.R
Args[5]= --args
Args[6]= AAA
Args[7]= BBB

如图:

 

补充说明:

在unix、windows外部需要调用R脚本执行,然后又需要输入不同的参数,类似shell脚本的命令行参数输入,可以使用Rcript命令实现。

命令格式:Rscript [options] [-e expression] file [args]
file表示需要执行的脚本,[options] [-e expression] 可以有也可以不用。

[args]是参数列表。


首先需要在file文件中的第一行加入:

Args <- commandArgs()

然后按照以下格式执行

Rscript *.R 参数1 参数2 ...

在file脚本中,可以引用参数Args,

Args[1]= "/usr/local/lib64/R/bin/exec/R"
Args[2]= "--slave"
Args[3]= "--no-restore"
Args[4]="--file=a.r"
Args[5]="--args"
Args[6]==参数1
Args[7]==参数2
可见输入的参数从第六个和第七个开始。

 

REF: http://f.dataguru.cn/thread-174642-1-1.html

R语言使用命令行参数