匹配参数,允许模糊匹配,例如下面输入type=”t” 或者 type=”mea”,则会分别返回”trimmed”和”mean”,方便的是输入参数不匹配的时候可以返回错误信息。
center <- function(x, type = c("mean", "median", "trimmed")) {type <- match.arg(type)print(type)switch(type,mean = mean(x),median = median(x),trimmed = mean(x, trim = .1))}
完整形式是下面样子,choices为参数可以选择的值。但是在函数中参数设置有默认值,choices就等于默认值,可以省略。如果输入为NULL,则匹配默认参数第一个。
match.arg(arg, choices, several.ok = FALSE)
