The magrittr package offers a set of operators which promote semantics that will improve your code by
structuring sequences of data operations left-to-right (as opposed to from the inside and out),
avoiding nested function calls,
minimizing the need for local variables and function definitions, and
making it easy to add steps anywhere in the sequence of operations.
The operators pipe their left-hand side values forward into expressions that
appear on the right-hand side, i.e. one can replace f(x)
with
x %>% f
, where %>%
is the (main) pipe-operator.
Details
Consider the example below. Four operations are performed to arrive at the desired data set, and they are written in a natural order: the same as the order of execution. Also, no temporary variables are needed. If yet another operation is required, it is straight-forward to add to the sequence of operations whereever it may be needed.
For a more detailed introduction see the vignette
(vignette("magrittr")
) or the documentation pages for the
available operators:
%>% | pipe. |
%T>% | tee pipe. |
%<>% | assignment pipe. |
%$% | exposition pipe. |
Author
Maintainer: Lionel Henry lionel@rstudio.com
Authors:
Stefan Milton Bache stefan@stefanbache.dk (Original author and creator of magrittr) [copyright holder]
Hadley Wickham hadley@rstudio.com
Other contributors:
RStudio [copyright holder, funder]