Re: [Rd] unlist change the ordered type

From: <cgenolin_at_u-paris10.fr>
Date: Sun, 26 Oct 2008 19:35:09 +0100

"Charles C. Berry" <cberry_at_tajo.ucsd.edu> a écrit :

> On Fri, 24 Oct 2008, Christophe Genolini wrote:
>
>> Hi the list,
>>
>> unlist respect the all the atomic type except orderd (it change of
>> ordered into factor) :
>>
>> ### integer
>> class(unlist(list(1:5,1:3)))
>> #[1] "integer"
>>
>> ### numeric
>> class(unlist(list(1.2,3.5)))
>> #[1] "numeric"
>>
>> ### character
>> class(unlist(list("e","e")))
>> #[1] "character"
>>
>> ### factor
>> class(unlist(list(factor("e"),factor("e"))))
>> #[1] "factor"
>>
>> ### ordered
>> class(unlist(list(ordered("e"),ordered("e"))))
>> #[1] "factor"
>
> Consider
>
> unlist(list(ordered(1:2),ordered(letters[1:4])))
>
> Since one cannot deduce what ordering should apply, the best that can
> be done is to demote all arguments to factors.
>
> This is the general case. Only in the special case in which all list
> elements are of class 'ordered' and the levels attributes are the
> same would this be sensible.

This "only special" case is quite common since the use of lapply on ordered gives such a list

Christophe



R-devel_at_r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel Received on Sun 26 Oct 2008 - 18:36:51 GMT

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Sun 26 Oct 2008 - 21:30:25 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-devel. Please read the posting guide before posting to the list.

list of date sections of archive