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.