请求解析两个R语言自定义函数:cmdargs与find的功能及逐行说明
2. find 函数:安全提取参数值(带默认值)
这个函数用于从cmdargs生成的命名向量中提取指定参数,如果参数不存在(对应值为NA),则返回预设的默认值。
逐行拆解:
find <- function(Cmdvalues,arg,default)
定义函数find,三个参数:Cmdvalues:cmdargs返回的带命名参数向量;arg:要查找的参数名称;default:参数不存在时返回的默认值。
if(is.na(Cmdvalues[arg]))
判断目标参数是否存在(如果参数不存在,Cmdvalues[arg]会返回NA)。return(default)
如果参数不存在,返回预设的默认值。else{ return(unname(Cmdvalues[arg])) }
如果参数存在,取出对应的值并用unname()去掉命名属性,返回纯值。
示例用法:
# 提取存在的参数 find(parsed_args, "input", "default.csv") # 返回 "data.csv" # 提取不存在的参数,返回默认值 find(parsed_args, "verbose", "FALSE") # 返回 "FALSE"
内容的提问来源于stack exchange,提问作者avinash0513
相关产品推荐
相关产品推荐

