Differences between %.% (dplyr) and %>% (magrittr)
dplyr, magrittr, pipe, r
Solution
dplyr now imports `%>%` from magrittr and uses it by default. See this answer for details.
Differences include
you can use a `.` as placeholder for the left-hand side, e.g.
iris %>% plot(Sepal.Length ~ Sepal.Width, data = .)
`%>%` respects `(rhs)`, e.g.
1:10 %>% (call("sum"))
1:10 %>% (function(x) x^2 + 2*x)
For a more useful example of this, see https://gist.github.com/anonymous/0c69b019d0b4f6ae5050
For single argument function calls, you can omit parens:
"2014-05-18" %>% as.Date
Problem
The `dplyr` package introduced the `%.%` operator to pass the left hand side as an argument of the function on the right hand side, similar to a *NIX pipe. The `magrittr` package is a much more lightweight package that exists to define only that pipe-like operator. Yet one uses `%.%` and the other `%>%`. Is there any difference between the two? Can I just use `%>%` even in `dplyr` code, or will that cause subtle bugs? On inspecting the code, they take very different paths early on, so simple eyeball comparison would suggest that they're different. I haven't been able to find anything documented when I search the web for them, nor have I run across anything in the documentation itself.