df <- read.table(textConnection("
category type values
1 treat_A AA 0.38200018
2 treat_A AAAA 0.10068056
3 treat_A B 0.59648427
4 treat_A AAA 0.89910581
5 treat_A BB 0.88460952
6 treat_A BBBB 0.95846431
7 treat_A BBB 0.01449629
8 treat_A A 0.40742210
9 treat_B B 0.86324656
10 treat_B AAA 0.13858455
11 treat_B BBB 0.24503311
12 treat_B AA 0.04547258
13 treat_B AAAA 0.03238014
14 treat_B BB 0.16412854
15 treat_B A 0.21961119
16 treat_B BBBB 0.01709036"), header = TRUE)
df$type <- factor(df$type,
levels = c('AAAA', 'AAA', 'AA',
'A', 'BBBB', 'BBB', 'BB', 'B'))
df[with(df, order(category, type)), ]
HTH,
Dennis
On Tue, Mar 8, 2011 at 12:33 AM, Vincy Pyne <vincy_pyne@yahoo.ca> wrote:
> Dear R helpers,
>
> Suppose I have following data.frame.
>
> df <- data.frame(category = c("treat_A", "treat_A",
"treat_A", "treat_A",
> "treat_A", "treat_A", "treat_A",
"treat_A", "treat_B", "treat_B",
"treat_B",
> "treat_B", "treat_B", "treat_B",
"treat_B", "treat_B"), type = c("AA",
> "AAAA", "B", "AAA", "BB",
"BBBB", "BBB", "AAA", "B",
"AAA", "BBB", "AA",
> "AAAA", "BB", "A", "BBBB"), values
= c(0.382000183, 0.100680563,
> 0.596484268, 0.899105808, 0.884609516, 0.958464309, 0.014496292,
> 0.407422102, 0.863246559, 0.138584552, 0.245033113, 0.045472579,
> 0.032380139, 0.164128544, 0.219611194, 0.017090365))
>
> > df
> category type values
> 1 treat_A
> AA 0.38200018
> 2 treat_A AAAA 0.10068056
> 3 treat_A B 0.59648427
> 4 treat_A AAA 0.89910581
> 5 treat_A BB 0.88460952
> 6 treat_A BBBB 0.95846431
> 7 treat_A BBB 0.01449629
> 8 treat_A A 0.40742210
> 9 treat_B B 0.86324656
> 10 treat_B AAA 0.13858455
> 11 treat_B BBB 0.24503311
> 12 treat_B
> AA 0.04547258
> 13 treat_B AAAA 0.03238014
> 14 treat_B BB 0.16412854
> 15 treat_B A 0.21961119
> 16 treat_B BBBB 0.01709036
>
> I need to sort above dataframe for the category treat_A and treat_B
> type-wise i.e. in the order (AAAA, AAA, AA, A, BBBB, BBB, BB, B) Thus I
need
>
> category type values
> 1 treat_A AAAA 0.10068056
> 2 treat_A AAA 0.89910581
> 3 treat_A AA 0.38200018
> 4
> treat_A A 0.40742210
> 5 treat_A BBBB 0.95846431
> 6 treat_A BBB 0.01449629
> 7 treat_A BB 0.88460952
> 8 treat_A B 0.59648427
> 9 treat_B AAAA 0.03238014
> 10 treat_B AAA 0.13858455
> 11 treat_B AA 0.04547258
> 12 treat_B A 0.21961119
> 13 treat_B
> BBBB 0.01709036
> 14 treat_B BBB 0.24503311
> 15 treat_B BB 0.16412854
> 16 treat_B B 0.86324656
>
> Kindly advice how this can be achieved. I referred to "?sort" and
"?order"
> literature, but couldn't find any example of this sort.
>
> Thanking you in advance.
>
>
> Vincy
>
>
>
> [[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.
>
>
[[alternative HTML version deleted]]