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.
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:
%>% |
forward-pipe operator. |
%T>% |
tee operator. |
%<>% |
compound assignment pipe-operator. |
%$% |
exposition pipe-operator. |