Value Matching

Usage

match(x, table, nomatch=NA)
x %in% table

Arguments

x the values to be matched.
table the values to be matched against.
nomatch the value to be returned in the case when no match is found.

Description

match: If x[i] is found to equal table[j] then the value returned in the i-th position of the return value is j. If no match is found, the value is nomatch.

%in%: A utility function, currently defined as
"%in%" <- function(x, y) match(x, y, nomatch = 0) > 0 allowing an intuitive usage and returning a logical vector of length length(x).

See Also

pmatch and charmatch for (partial) string matching, match.arg, etc for function argument matching.

Examples

## The intersection of two sets :
intersect <- function(x, y) y[match(x, y, nomatch = 0)]
intersect(1:10,7:20)

1:10 %in% c(1,3,5,9)
sstr <- c("c","ab","B","bba","c","@","bla","a","Ba","%")
sstr[sstr %in% c(letters,LETTERS)]

"%w/o%" <- function(x,y) x[!x %in% y] #--  x without y
(1:10) %w/o% c(3,7,12)


[Package Contents]