Homepage: https://kwstat.github.io/lookup
Repository: https://github.com/kwstat/lookup
The merge()
function works great to combine dataframes. Until it returns more rows than expected. Or more columns than expected. Or more rows and columns than expected. The match()
function can be used, but it is convoluted.
This package provides two simple functions:
vlookup()
is similar to Excel'sVLOOKUP
lookup(x,key,value)
is a more sequential-thinking version ofmatch()
. Look forx
inkey
and return the same position element fromvalue
.
Both functions return a vector that is the same length as the input.
# Install the released version from CRAN:
install.packages("lookup")
# Install the development version from GitHub:
install.packages("devtools")
devtools::install_github("kwstat/lookup")
library(lookup)
dat = as.data.frame(state.x77)
dat$statename = rownames(dat)
lookup(state.name[1:5], dat$statename, dat$Frost)
# [1] 20 152 15 65 20
vlookup(state.name[1:5], dat, "statename", "Frost")
# [1] 20 152 15 65 20