R/recode.r

Defines functions Recode4R RecodeR Recode4 Recode

Documented in Recode Recode4 Recode4R RecodeR

Recode <- function(var, from, to, char=TRUE, recycle=FALSE)
{
 if (char && is.factor(to)) to <- as.character(to)
 if (recycle) to <- rep(to, length(from))
 y <- x <- as.vector(var)
 for (i in seq_along(from)) x <- replace(x, y == from[i], to[i])
 if (is.factor(var)) factor(x) else x
}

## ===

Recode4 <- function(var, from, to, missed="", ...)
{
 ifelse(var %in% from, Recode(var, from, to, ...), missed)
}

## ===

RecodeR <- function(var, from, to, char=TRUE, recycle=FALSE)
{
 if (char && is.factor(to)) to <- as.character(to)
 if (recycle) to <- rep(to, length(from))
 x <- as.vector(var)
 for (i in seq_along(from)) x <- replace(x, x == from[i], to[i])
 if (is.factor(var)) factor(x) else x
}

## ===

Recode4R <- function(var, from, to, missed="", ...)
{
 ifelse(var %in% from, RecodeR(var, from, to, ...), missed)
}

Try the shipunov package in your browser

Any scripts or data that you put into this service are public.

shipunov documentation built on Feb. 16, 2023, 9:05 p.m.