Dear R forum,

I have a data.frame as defied below - 

df = data.frame(names = c("C", "A", "A", "B", "C", "B", "A", "B", "C"), dates = 
c("4/15/2013", "4/13/2013", "4/15/2013", "4/13/2013", "4/13/2013", "4/15/2013", 
"4/14/2013", "4/14/2013","4/14/2013" ),values = c(10, 31, 31, 17, 11, 34, 102, 
47, 29))

> df
  names     dates values
1     C 4/15/2013     10
2     A 4/13/2013     31
3     A 4/15/2013     31
4     B 4/13/2013     17
5     C 4/13/2013     11
6     B
 4/15/2013     34
7     A 4/14/2013    102
8     B 4/14/2013     47
9     C 4/14/2013     29

I need to sort df first on "names" in increasing order and then further on 
"dates" in a decreasing order i.e. I need

names        dates        values
A            4/15/2013      31
A            4/14/2013     102
A            4/13/2013      31
B            4/15/2013     
 34
B            4/14/2013      47
B            4/13/2013      17
C            4/15/2013      10
C            4/14/2013      29
C            4/13/2013      11

I tried

df_sorted = df[order(df$names, (as.Date(df$dates, "%m/%d/%Y")), decreasing = 
TRUE),]

> df_sorted
  names     dates values
1     C 4/15/2013     10
9     C 4/14/2013     29
5     C 4/13/2013    
 11
6     B 4/15/2013     34
8     B 4/14/2013     47
4     B 4/13/2013     17
3     A 4/15/2013     31
7     A 4/14/2013    102
2     A 4/13/2013     31


I need A to appear first with all three corresponding dates in decreasing 
order, then B and so on.

Please guide.

With regards

Katherine


        [[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