Series of functions extending existing vector operations to lists of vectors.
setmatch(x, y, nomatch = NA_integer_)setsetequal(x, y)
setsetdiff(x, y)
subsetmatch(x, y, nomatch = NA_integer_)
supersetmatch(x, y, nomatch = NA_integer_)
setmatch
and subsetmatch
return a vector of integers
of length the same as the list x
.
setsetdiff
returns a sublist x
.
setsetequal
returns a logical of length 1.
list of vectors.
list of vectors.
value to be returned in the case when no match is found. Note that it is coerced to integer.
setsetequal
: Test for equality of sets
setsetdiff
: Setdiff for lists
subsetmatch
: Test for subsets
supersetmatch
: Test for supersets
Robin Evans
setmatch
checks whether each vector in the list x
is also
contained in the list y
, and if so returns position of the first such
vector in y
. The ordering of the elements of the vector is
irrelevant, as they are considered to be sets.
subsetmatch
is similar to setmatch
, except vectors in x
are searched to see if they are subsets of vectors in y
. Similarly
supersetmatch
consideres if vectors in x
are supersets of
vectors in y
.
setsetdiff
is a setwise version of setdiff
, and
setsetequal
a setwise version of setequal
.
x = list(1:2, 1:3)
y = list(1:4, 1:3)
setmatch(x, y)
subsetmatch(x, y)
setsetdiff(x, y)
x = list(1:3, 1:2)
y = list(2:1, c(2,1,3))
setsetequal(x, y)
Run the code above in your browser using DataLab