## Argument Verification Using Partial Matching

## Usage

    match.arg(arg)
    match.arg(arg, choices)

## Arguments

`arg` | a character string
`choices` | a character vector of candidate values

## Description

`match.arg` matches `arg` against a table of candidate values as specified by `choices`. In the one-argument form `match.arg(arg)`, the choices are obtained from a default setting for the formal argument `arg` of the function from which `match.arg` was called.

Matching is done using `pmatch`, so `arg` may be abbreviated.

## Value

The unabbreviated version of the unique partial match if there is one; otherwise, an error is signalled.

## See Also

`pmatch`

## Examples

    ## Extends the example for `switch'
    center <- function(x, type = c("mean", "median", "trimmed")) {
      type <- match.arg(type)
      switch(type,
             mean = mean(x),
             median = median(x),
             trimmed = mean(x, trim = .1))
    }
    x <- rcauchy(10)
    center(x, "t")       # Works
    center(x, "med")     # Works
    center(x, "m")       # Error
    ## Actually, it would be nicer if one could catch the error
    ## to produce a more helpful error message ...

[Package Contents]