This is a simple wrapper to the match function.
Value
A vector the same length as x, but containing the values
of value. If x[i] is equal to key[j], then the
value returned in the ith position of the vector is value[j].
If no match is found, NA is returned.
Details
Search for elements of x in key and return the corresponding
element of value.
If no match is found, return nomatch.
Examples
# Example 1. A and B have different factor levels
A <- factor(c("A","E","F"))
B <- factor(c("E","F","G"))
v <- c(4,2,0)
lookup(A,B,v)
#> [1] NA 4 2
# Example 2. Merge treatment means back into the raw data
dat <- data.frame(Trt = rep(LETTERS[1:5],2),
x=round(rnorm(10),2))
# Treatment B is missing all values, treatment D missing one value
dat$x[dat$Trt=="B"] <- NA
dat$x[4] <- NA
# Calculate treatment means
TrtMean <- tapply(dat$x, dat$Trt, mean, na.rm=TRUE)
TrtMean
#> A B C D E
#> -0.125 NaN -1.345 -0.240 0.170
# Merge the means into the original data
dat$TrtMean <- lookup(dat$Trt, names(TrtMean), TrtMean)
