[Rd] Proposal unary - operator for factors

Duncan Murdoch murdoch at stats.uwo.ca
Thu Feb 4 01:16:44 CET 2010

On 03/02/2010 6:49 PM, William Dunlap wrote:
>> -----Original Message-----
>> From: h.wickham at gmail.com [mailto:h.wickham at gmail.com] On 
>> Behalf Of Hadley Wickham
>> Sent: Wednesday, February 03, 2010 3:38 PM
>> To: William Dunlap
>> Cc: r-devel at r-project.org
>> Subject: Re: [Rd] Proposal unary - operator for factors
>>> It wouldn't make sense in the context of
>>>   vector[-factor]
>> True, but that doesn't work currently so you wouldn't lose anything.
>> However, it would make a certain class of problem that used to throw
>> errors become silent.
>>> Wouldn't it be better to allow order's decreasing argument
>>> to be a vector with one element per ... argument?  That
>>> would work for numbers, factors, dates, and anything
>>> else.  Currently order silently ignores decreasing[2] and
>>> beyond.
>> The problem is you might want to do something like order(a, -b, c, -d)
> Currently, for numeric a you can do either
>    order(-a)
> or
>    order(a, decreasing=FALSE)
> For nonnumeric types like POSIXct and factors only
> the latter works.
> Under my proposal your
>    order(a, -b, c, d)
> would be
>    order(a, b, c, d, decreasing=c(FALSE,TRUE,FALSE,TRUE))
> and it would work for any ordably class without modifications
> to any classes.

Why not use

  order(a, -xtfrm(b), c, -xtfrm(d))


Duncan Murdoch

More information about the R-devel mailing list