[R] sort a data frame by a vector
jim holtman
jholtman at gmail.com
Wed Dec 2 04:59:21 CET 2009
The factor statement should have been: (missed the 'vec' on the first reading)
dataDF$A1 <- factor(dataDF$A1, levels=vec)
On Tue, Dec 1, 2009 at 10:57 PM, jim holtman <jholtman at gmail.com> wrote:
> Is this what you want:
>
>> dataDF = data.frame(A1 = c("B", "A", "C"), A2 = c(1,2,3))
>> dataDF
> A1 A2
> 1 B 1
> 2 A 2
> 3 C 3
>> dataDF[order(dataDF$A1),]
> A1 A2
> 2 A 2
> 1 B 1
> 3 C 3
>>
>
> If you want the sequence "CAB" then you will have to change the
> factors in column 1:
>
>> dataDF$A1 <- factor(dataDF$A1, levels=c("C", "A", "B"))
>> dataDF[order(dataDF$A1),]
> A1 A2
> 3 C 3
> 2 A 2
> 1 B 1
>>
>
>
> On Tue, Dec 1, 2009 at 10:36 PM, Hao Cen <hcen at andrew.cmu.edu> 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.
>>
>
>
>
> --
> Jim Holtman
> Cincinnati, OH
> +1 513 646 9390
>
> What is the problem that you are trying to solve?
>
--
Jim Holtman
Cincinnati, OH
+1 513 646 9390
What is the problem that you are trying to solve?
More information about the R-help
mailing list