[R] list operation
William Dunlap
wdunlap at tibco.com
Wed Jun 23 23:13:04 CEST 2010
> lst <- list(m=c('a','b','c'),n=c('c','a'),l=c('a','bc'))
> f <- function(list, set) vapply(lst, function(el)all(is.element(set, el)), FUN.VALUE=logical(1))
> # if you have an old version of R use as.logical(sapply(...))
> # instead of vapply(..., FUN.VALUE=logical(10)
> i <- f(lst, c("a","c"))
> i
m n l
TRUE TRUE FALSE
> names(lst)[i]
[1] "m" "n"
> lst[i]
$m
[1] "a" "b" "c"
$n
[1] "c" "a"
Bill Dunlap
Spotfire, TIBCO Software
wdunlap tibco.com
> -----Original Message-----
> From: r-help-bounces at r-project.org
> [mailto:r-help-bounces at r-project.org] On Behalf Of Yuan Jian
> Sent: Wednesday, June 23, 2010 6:35 AM
> To: r-help at r-project.org
> Subject: [R] list operation
>
> Hi,
>
> it seems a simple problem, but I can not find a clear way.
> I have a list:
> lst=list(m=c('a','b','c'),n=c('c','a'),l=c('a','bc'))
> > lst
> $m
> [1] "a" "b" "c"
> $n
> [1] "c" "a"
> $l
> [1] "a" "bc"
>
> how can I get list elements that include a given subset? for
> example, for given subset {'a','c'}, the answer should be 'm' and 'n'.
>
> thanks
> Yu
>
>
>
> [[alternative HTML version deleted]]
>
>
More information about the R-help
mailing list