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]]
______________________________________________
[email protected] 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.