match.arg                package:base                R Documentation

_A_r_g_u_m_e_n_t _V_e_r_i_f_i_c_a_t_i_o_n _U_s_i_n_g _P_a_r_t_i_a_l _M_a_t_c_h_i_n_g

_D_e_s_c_r_i_p_t_i_o_n:

     `match.arg' matches `arg' against a table of candidate values as
     specified by `choices'.

_U_s_a_g_e:

     match.arg(arg, choices)

_A_r_g_u_m_e_n_t_s:

     arg: a character string

 choices: a character vector of candidate values

_D_e_t_a_i_l_s:

     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.

_V_a_l_u_e:

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

_S_e_e _A_l_s_o:

     `pmatch', `match.fun', `match.call'.

_E_x_a_m_p_l_e_s:

     ## 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

