Hello,

I'm using R version 3.0.0 on a mac. I'm having trouble getting order to
behave as I expect it should. I'm trying to sort a data.frame according to
a character vector. I'm able to sort the data.frame, but it retruns an
unexpected result. I have no idea where the order that is being produced
comes from.

Any ideas on how to properly order a data frame by a character vector?

Here is the current order of the data frame (called str.dat):

> head(str.dat)
   str.names POPINFO POPFLAG LOCDATA Loc1 Loc2 Loc3 ind.names
1 alba1.pop3       3       0       1   12    3    2     alba1
2 alba2.pop3       3       0       1    3    3    2     alba2
3 alch1.pop4       4       0       2    2    3    2     alch1
4 alch2.pop4       4       0       2    2    3    2     alch2
5 alco1.pop4       4       0       3    3    3    2     alco1
6 alco2.pop4       4       0       3    3    3    2     alco2



Here's the order I expect it to be in when I use order:

> head(data.frame(gen.names))
  gen.names
1     magv1
2     magv2
3     magv3
4     magv4
5       lc1
6       lc2


Here's the order I'm getting:

> head(str.dat[order(gen.names),])
     str.names POPINFO POPFLAG LOCDATA Loc1 Loc2 Loc3 ind.names
111 ncle2.pop5       5       0      39    3    3    2     ncle2
112 ncle3.pop5       5       0      39    2    2    2     ncle3
146 wvma1.pop8       8       0      57    3    3    2     wvma1
145 wvfa2.pop8       8       0      56    3    3    2     wvfa2
55  flse6.pop2       2       0      19    2    5    4     flse6
54  flse5.pop2       2       0      19    2    5    4     flse5




Many thanks,

Karl

        [[alternative HTML version deleted]]

______________________________________________
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