tapply changing order of factor levels?
Hi, I don't believe the problem is related to tapply. I would say it is because of the factor. In fact, the order of a factor is given by the alphanumerical order of his levels. You can see it with levels(myfactor). I you want to change the order, redefine the levels of myfactor with the expected order or use the function ordered. Alain
Chirantan Kundu wrote:
Hi, Does tapply change the order when applied on a factor? Below is the code I tried.
mylevels<-c("IN0020020155","IN0019800021","IN0020020064")
mydata<-c("IN0020020155","IN0019800021","IN0020020064","IN0020020155","IN0019800021","IN0019800021","IN0020020064","IN0020020064","IN0019800021")
myfactor<-factor(mydata,levels=mylevels)
myfactor
[1] IN0020020155 IN0019800021 IN0020020064 IN0020020155 IN0019800021 IN0019800021 IN0020020064 IN0020020064 IN0019800021 Levels: IN0020020155 IN0019800021 IN0020020064
summary(myfactor)
IN0020020155 IN0019800021 IN0020020064
2 4 3
# Everything fine upto this point. The order of levels is maintained as it
is.
mysummary<-tapply(myfactor,mydata,length)
mysummary
IN0019800021 IN0020020064 IN0020020155
4 3 2
# Now the order has changed.
Is this the expected behavior? Any idea on how to avoid the change in order?
Regards,
Chirantan
____________________________________ Visit us at http://www.2pirad.com [[alternative HTML version deleted]] ______________________________________________ R-help at 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.
Alain Guillet Statistician and Computer Scientist SMCS - Institut de statistique - Universit? catholique de Louvain Bureau d.126 Voie du Roman Pays, 20 B-1348 Louvain-la-Neuve Belgium tel: +32 10 47 30 50