Thank you. I was just curious what sort=FALSE had no impact.
Wondering what it is there for then...

On Wed, Mar 8, 2017 at 11:43 AM, Jeff Newmiller
<jdnew...@dcn.davis.ca.us> wrote:
> Merging is not necessarily an order-preserving operation, but sorting can 
> make the operation more efficient. The sort=TRUE argument forces the result 
> to be sorted, but sort=FALSE is in not a promise that order will be 
> preserved. (I think the imperfect sorting occurs when there are multiple keys 
> but am not sure.) You can add columns to the input data that let you restore 
> some semblance of the original ordering afterward, or you can roll your own 
> possibly-less-efficient merge using match and indexing:
>
> info[ match( grades2$grade, info$grade ), ]
> --
> Sent from my phone. Please excuse my brevity.
>
> On March 8, 2017 8:07:27 AM PST, Dimitri Liakhovitski 
> <dimitri.liakhovit...@gmail.com> wrote:
>>Hello!
>>I have a vector 'grades' and a data frame 'info':
>>
>>grades2 <- data.frame(grade = c(1,2,2,3,1))
>>info <- data.frame(
>>  grade = 3:1,
>>  desc = c("Excellent", "Good", "Poor"),
>>  fail = c(F, F, T)
>>)
>>
>>I want to get the info for all grades I have in info:
>>
>>This solution resorts everything in the order of column 'grade':
>>merge(grades2, info, by = "grade", all.x = T, all.y = F)
>>
>>Could you please explain why this solution also resorts - despite sort
>>= FALSE?
>>merge(grades2, info, by = "grade", all.x = T, all.y = F, sort = FALSE)
>>
>>Thanks a lot!



-- 
Dimitri Liakhovitski

______________________________________________
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
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