其他分享
首页 > 其他分享> > R语言如何最简单的写脚本并添加帮助文档

R语言如何最简单的写脚本并添加帮助文档

作者:互联网

1. 默认的参数commandArgs超简单

1.1 脚本示例

head.R

args = commandArgs(TRUE)

if(length(args) != 2){
    cat("运行命令方式:Rscript head.R dat.csv 5\n\thead.R 为脚本\n\tdat.csv 为数据\n\t5 为行数\n")
    quit("no")
}else{
    dd = read.csv(args[1])
    n = as.numeric(args[2])
    head(dd,n)
}

1.2 脚本解释

1.3 脚本测试

执行:无参数,直接给出帮助文档

(base) [dengfei@ny01 a]$ Rscript head.R 
运行命令方式:Rscript head.R dat.csv 5
	head.R 为脚本
	dat.csv 为数据
	5 为行数

执行:参数个数不符合要求,直接给出帮助文档

(base) [dengfei@ny01 a]$ Rscript head.R npk.csv 
运行命令方式:Rscript head.R dat.csv 5
	head.R 为脚本
	dat.csv 为数据
	5 为行数

执行:参数正确,直接执行

(base) [dengfei@ny01 a]$ Rscript head.R npk.csv 4
  block N P K yield
1     1 0 1 1  49.5
2     1 1 1 0  62.8
3     1 0 0 0  46.8
4     1 1 0 1  57.0

2. 如果想正式使用optparse

2.1 脚本示例

head2.R

library(optparse)

option_list <- list(
  make_option(c("-d", "--dat"), type = "character", default=FALSE,
              help="请输入数据文件"),
  make_option(c("-r", "--row"), type="integer", default=FALSE,
              help="请输入行数")
)

opt_parser = OptionParser(option_list=option_list);
opt = parse_args(opt_parser);
file = opt$dat
r = opt$row

dd = read.csv(file)
head(dd,r)

2.2 脚本解释

1.3 脚本测试

执行:–help,直接给出帮助文档

(base) [dengfei@ny01 a]$ Rscript head2.R --help
Usage: head2.R [options]


Options:
	-d DAT, --dat=DAT
		请输入数据文件

	-r ROW, --row=ROW
		请输入行数

	-h, --help
		Show this help message and exit

也可以使用简写的-h形式打印帮助文档

(base) [dengfei@ny01 a]$ Rscript head2.R -h
Usage: head2.R [options]


Options:
	-d DAT, --dat=DAT
		请输入数据文件

	-r ROW, --row=ROW
		请输入行数

	-h, --help
		Show this help message and exit

执行:参数正确,直接执行

Rscript head2.R -d npk.csv -r 4
(base) [dengfei@ny01 a]$ Rscript head2.R -d npk.csv -r 4
  block N P K yield
1     1 0 1 1  49.5
2     1 1 1 0  62.8
3     1 0 0 0  46.8
4     1 1 0 1  57.0

标签:脚本,Rscript,head,args,dat,添加,文档,参数,csv
来源: https://blog.51cto.com/u_15242286/2842520