我是一个有用的助手,可以为您翻译文本。
我正在尝试运行从R-bloggers获取的optparse软件包的一些演示R代码。我正在使用ubuntu 14.04
代码如下:
#!/usr/bin/env Rscript
library(optparse)
option_list = list( make_option(c("-f", "--file"),
type="character", default=NULL,
help="dataset file name",
metavar="character"),
make_option(c("-o", "--out"),
type="character", default="out.txt",
help="output file name [default=
%default]", metavar="character")
);
opt_parser = OptionParser(option_list=option_list);
opt = parse_args(opt_parser);
if (is.null(opt$file)){
print_help(opt_parser)
stop("At least one argument must be supplied (input file).n",
call.=FALSE)
}
## program...
df = read.table(opt$file, header=TRUE)
num_vars = which(sapply(df, class)=="numeric")
df_out = df[ ,num_vars]
write.table(df_out, file=opt$out, row.names=FALSE)
如果整个脚本使用以下命令保存在名为yasrs.R的文件中:
Rscript --vanilla yasrs.R
应返回帮助信息。
我收到一个错误:
Rscript --vanilla yasrs.R 错误:library(optparse) : 没有名为 ‘optparse’ 的包
我在编写代码时通过RStudio安装了该软件包(optparse),并确保在从终端调用时进行了安装。终端和RStudio都运行相同的R版本。
欢迎提出任何建议。