This may help: > a <- c('a') > b <- c('a','b','c') > c <- c('a','b','d') > all(a %in% b) [1] TRUE > all(b %in% a) [1] FALSE > all(b %in% c) [1] FALSE > d <- c('b', 'c') > all(d %in% b) [1] TRUE >
What you probably want to insure that the vectors contain the same elements is: if (all(v1 %in$ v2) && all(v2 %in% v1)) On Thu, Jun 5, 2008 at 6:38 AM, Karin Lagesen <[EMAIL PROTECTED]> wrote: > > I know this is fairly basic, but I must have somehow missed it in the > manuals. > > I have two vectors, often of unequal length. I would like to compare > them for identity. Order of elements do not matter, but they should > contain the same. > > I.e: I want this kind of comparison: > > > if (1==1) show("yes") else show("blah") > [1] "yes" > > if (1==2) show("yes") else show("blah") > [1] "blah" > > > > Only replace the numbers with for instance the vectors > > > a = c("a") > > b = c("b","c") > > c = c("c","b") > > > Now, I realize I only get a warning when comparing things, but this to > me means that I am not doing it correctly: > > > if (a==a) show("yes") else show("blah") > [1] "yes" > > if (a==b) show("yes") else show("blah") > [1] "blah" > Warning message: > In if (a == b) show("yes") else show("blah") : > the condition has length > 1 and only the first element will be used > > > > if (b == c) show("yes") else show("blah") > [1] "blah" > Warning message: > In if (b == c) show("yes") else show("blah") : > the condition has length > 1 and only the first element will be used > > > > I have also tried the %in% comparator, but that one throws warnings too: > > > if (b %in% c) show("yes") else show("blah") > [1] "yes" > Warning message: > In if (b %in% c) show("yes") else show("blah") : > the condition has length > 1 and only the first element will be used > > > > if (c %in% c) show("yes") else show("blah") > [1] "yes" > Warning message: > In if (c %in% c) show("yes") else show("blah") : > the condition has length > 1 and only the first element will be used > > > > So, how is this really supposed to be done? > > Thanks! > > Karin > > ______________________________________________ > R-help@r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide > http://www.R-project.org/posting-guide.html<http://www.r-project.org/posting-guide.html> > and provide commented, minimal, self-contained, reproducible code. > -- Jim Holtman Cincinnati, OH +1 513 646 9390 What is the problem you are trying to solve? [[alternative HTML version deleted]] ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.