Dear Johnny,

this is a bug in the hashing-code of sets. Use:


sets_options("hash", FALSE)
lset <- cset(s, matchfun = matchfun(match.2.list))

which will work.

Thanks for pointing this out!

David

----------------

Hi,

I tried to use the sets package yesterday, which seems to be a very powerful
package: thanks to the developers. I wanted to define sets of lists where 2
lists are considered equal if they have the same length.
So, I implemented:

match.2.list <- function(l1,l2){
  length(l1)==length(l2)
}

and then defined my cset as:

s <- set(list(1,2),list(3,4))
lset <- cset(s,matchfun(match.2.list))

so if I now do:
y <- list(3,4)
y %e% lset

I get the correct answer, which is TRUE.

But if I do:
x <- list(1,8)
x %e% lset

I now get FALSE, even though x is a list of length 2, and should thus match
any of the 2 lists in lset.

I must be doing something wrong; I checked with the doc, but I don't
understand.

--
Priv.-Doz. Dr. David Meyer
Institut für Wirtschaftsinformatik

Fachhochschule Technikum Wien
Höchstädtplatz 5, 1200 Wien
T: +43 1 333 40 77-394
F: +43 1 333 40 77-99 394
E: david.me...@technikum-wien.at
I: www.technikum-wien.at

______________________________________________
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.

Reply via email to