This function is from the car package. Please see that
help page for details: car::recode()
.
recode(
var,
recodes,
as.factor,
as.numeric = TRUE,
levels,
to.value = "=",
interval = ":",
separator = ";"
)
numeric vector, character vector, or factor.
character string of recode specifications: see below.
return a factor; default is TRUE
if var is a
factor, FALSE
otherwise.
if TRUE
(the default), and as.factor
is FALSE
,
then the result will be coerced to numeric if all values in the result
are numerals—i.e., represent numbers.
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.
The operator to separate old from new values, "=" by default; some other possibilities: "->", "~", "~>". Cannot include the interval operator (by default :) or the separator string (by default, ;), so, e.g., by default ":=>" is not allowed. The discussion in Details assumes the default "=". Use a non-default to.value if factor levels contain =.
the operator used to denote numeric intervals, by default ":". The discussion in Details assumes the default ":". Use a non-default interval if factor levels contain :.
the character string used to separate recode specifications, by default ";". The discussion in Details assumes the default ";". Use a non-default separator if factor levels contain ;.
Fox, J. and Weisberg, S. (2019) An R Companion to Applied Regression, Third Edition, Sage.
x<-rep(1:3,3)
x
#> [1] 1 2 3 1 2 3 1 2 3
rosetta::recode(
x,
"c(1,2)='A'; else='B'"
);
#> [1] "A" "A" "B" "A" "A" "B" "A" "A" "B"
rosetta::recode(
x,
"1:2='A'; 3='B'"
);
#> [1] "A" "A" "B" "A" "A" "B" "A" "A" "B"