Stavros Macrakis wrote: > On Sat, Mar 28, 2009 at 7:53 AM, Duncan Murdoch <murd...@stats.uwo.ca> wrote: > >> ...More generally, the xtfrm() function converts a vector into a numeric one >> that sorts in the same order. ... >> > > Thanks, I learn a lot just by reading the answers to other people's > questions on this list. > > Some followup questions: > > 1) Where does the name 'xtfrm' come from? > 2) Why isn't xtfrm of a numeric vector the identity function? > 3) Similarly, why isn't xtfrm of a logical vector just as.integer of > it? (as it is for factors) > 4) Why is xtfrm(c(2,3,2)) => c(1,3,1) and not c(1,2,1) or for that > matter c(2,3,2) (see point 2)? >
and one more; ?xtfrm says: " The default method will make use of '==', '>' and 'is.na' methods for the class of 'x', but might be rather slow when doing so. " and yet: x = c(1i, 0i) is(x) # [1] "complex" "vector" xtfrm(x) # [1] 2 1 there is no xtfrm.complex, so the default should be called and it would make use of '==', '>', and 'is.na' for the class 'complex'. but this fails: 0i > 1i # error: invalid comparison with complex values how come? (yes, it's again the flaw of complex being totally ordered while '>' and relatives cannot be used to establish the order). vQ ______________________________________________ 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.