# recode {car}

### Description

Recodes a numeric vector, character vector, or factor according to simple recode specifications. `Recode`

is an alias for `recode`

that avoids name clashes with packages, such as Hmisc, that have a `recode`

function.

### Usage

recode(var, recodes, as.factor.result, as.numeric.result=TRUE, levels) Recode(...)

### Arguments

- var
- numeric vector, character vector, or factor.
- recodes
- character string of recode specifications: see below.
- as.factor.result
- return a factor; default is
`TRUE`

if`var`

is a factor,`FALSE`

otherwise. - as.numeric.result
- if
`TRUE`

(the default), and`as.factor.result`

is`FALSE`

, then the result will be coerced to numeric if all values in the result are numerals---i.e., represent numbers. - levels
- an optional argument specifying the order of the levels in the returned factor; the default is to use the sort order of the level names.
- ...
- arguments to be passed to
`recode`

.

### Details

Recode specifications appear in a character string, separated by semicolons (see the examples below), of the form `input=output`

. If an input value satisfies more than one specification, then the first (from left to right) applies. If no specification is satisfied, then the input value is carried over to the result. `NA`

is allowed on input and output. Several recode specifications are supported:

- single value
- For example,
`0=NA`

. - vector of values
- For example,
`c(7,8,9)='high'`

. - range of values
- For example,
`7:9='C'`

. The special values`lo`

and`hi`

may appear in a range. For example,`lo:10=1`

.*Note:*`:`

is*not*the R sequence operator. In addition you may not use`:`

with the collect operator, so for example`c(1, 3, 5:7)`

will cause an error. `else`

- everything that does not fit a previous specification. For example,
`else=NA`

. Note that`else`

matches*all*otherwise unspecified values on input, including`NA`

.

If all of the output values are numeric, and if `as.factor.result`

is `FALSE`

, then a numeric result is returned; if `var`

is a factor, then by default so is the result.

### Values

a recoded vector of the same length as `var`

.

### References

Fox, J. and Weisberg, S. (2011) *An R Companion to Applied Regression*, Second Edition, Sage.

### Examples

x<-rep(1:3,3) x ## [1] 1 2 3 1 2 3 1 2 3 recode(x, "c(1,2)='A'; else='B'") ## [1] "A" "A" "B" "A" "A" "B" "A" "A" "B" Recode(x, "1:2='A'; 3='B'") ## [1] "A" "A" "B" "A" "A" "B" "A" "A" "B"

Documentation reproduced from package car, version 2.1-2. License: GPL (>= 2)