[R] sort a data frame by a vector

Hao Cen hcen at andrew.cmu.edu
Wed Dec 2 15:23:08 CET 2009


Thanks to all who replied. Issue solved

Jeff

On Wed, December 2, 2009 12:52 am, Don MacQueen wrote:
> This looks like a job for match().
>
>
>> vec = c("C", "A", "B")
>>
>> dataDF = data.frame(A1 = c("B", "A", "C"), A2 = c(1,2,3))
>>
>>
>> dataDF[match(dataDF$A1,vec),]
> A1 A2
> 3  C  3
> 2  A  2
> 1  B  1
>
>
> -Don
>
>
>
> At 10:36 PM -0500 12/1/09, Hao Cen wrote:
>
>> Hi,
>>
>>
>>
>>
>> I have a a vector  and a data frame with two columns
>>
>>
>> vec = c("C", "A", "B")
>>
>> dataDF = data.frame(A1 = c("B", "A", "C"), A2 = c(1,2,3))
>>
>>
>>
>> I would like to sort the data frame by column A1 such that the order of
>>  elements in A1 is as the same as in vec.
>>
>>
>>
>> After the ordering, the data frame would be
>>
>>
>> A1           A2
>>
>>
>> C             3
>>
>>
>> A             2
>>
>>
>> B             1
>>
>>
>>
>>
>> Any suggestions would be appreciated.
>>
>>
>>
>>
>> Thanks in advance
>>
>>
>>
>>
>> Jeff
>>
>>
>>
>> [[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.
>
>
> --
> ---------------------------------
> Don MacQueen
> Lawrence Livermore National Laboratory
> Livermore, CA, USA
> 925-423-1062
> macq at llnl.gov ---------------------------------
>
>
>




More information about the R-help mailing list