Uses an Archive to Amend Previous Stages of a Pipe using Current Output

Remedies a common problem in piping: not having access to intermediate outputs of the pipe. Within a "loop", a piping intermediate is stored in a stack archive, data is processed, and then both the stored intermediate and the current output are reintegrated using an "ending" function. Two special ending functions are provided: amend and insert. However, any ending function can be specified, including merge functions, join functions, setNames(), etc. This framework allows the following work-flow: focus on a particular aspect or section of a data set, conduct specific operations, and then reintegrate changes into the whole.

This package contains a flexible framework for extending the pipe into a loop. This allows a basic strategy of focusing on a certain aspect of the data frame, make some changes, and then reincorporate these changes into the original data frame.

Install with install.packages("loopr") for stable version devtools::install_github("bramtayl/loopr") for bleeding edge version

See vignette for package details.


Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.


1.0.1 by Brandon Taylor, 6 years ago

Browse source code at

Authors: Brandon Taylor

Documentation:   PDF Manual  

MIT + file LICENSE license

Imports plyr, dplyr, magrittr, lazyeval, R6

Suggests knitr

See at CRAN