purrr1.1.0 package

Functional Programming Tools

accumulate

Accumulate intermediate results of a vector reduction

along

Create a list of given length

array-coercion

Coerce array to list

as_mapper

Convert an object into a mapper function

as_vector

Coerce a list to a vector

at_depth

Map at depth

attr_getter

Create an attribute getter function

auto_browse

Wrap a function so it will automatically browse() on error

chuck

Get an element deep within a nested data structure, failing if it does...

compose

Compose multiple functions together to create a new function

cross

Produce all combinations of list elements

detect

Find the value or position of the first match

every

Do every, some, or none of the elements of a list satisfy a predicate?

faq-adverbs-export

Best practices for exporting adverb-wrapped functions

flatten

Flatten a list of lists into a simple vector

get-attr

Infix attribute accessor

has_element

Does a list contain an object?

head_while

Find head/tail that all satisfies a predicate.

imap

Apply a function to each element of a vector, and its index

in_parallel

Parallelization in purrr

insistently

Transform a function to wait then retry after an error

invoke

Invoke functions.

keep_at

Keep/discard elements based on their name/position

keep

Keep/discard elements based on their values

lift

Lift the domain of a function

list_assign

Modify a list

list_c

Combine list elements into a single data structure

list_flatten

Flatten a list

list_simplify

Simplify a list to an atomic or S3 vector

list_transpose

Transpose a list

lmap

Apply a function to list-elements of a list

map_depth

Map/modify elements at given depth

map_dfr

Functions that return data frames

map_if

Apply a function to each element of a vector conditionally

map_raw

Functions that return raw vectors

map

Apply a function to each element of a vector

map2

Map over two inputs

modify_in

Modify a pluck location

modify_tree

Recursively modify a list

modify

Modify elements selectively

negate

Negate a predicate function so it selects what it previously rejected

partial

Partially apply a function, filling in some arguments

pipe

Pipe operator

pluck_depth

Compute the depth of a vector

pluck

Safely get or set an element deep within a nested data structure

pmap

Map over multiple input simultaneously (in "parallel")

possibly

Wrap a function to return a value instead of an error

prepend

Prepend a vector

progress_bars

Progress bars in purrr

purrr_error_indexed

Indexed errors (purrr_error_indexed)

purrr-package

purrr: Functional Programming Tools

quietly

Wrap a function to capture side-effects

rate_sleep

Wait for a given time

rate-helpers

Create delaying rate settings

rbernoulli

Generate random sample from a Bernoulli distribution

rdunif

Generate random sample from a discrete uniform distribution

reduce_right

Reduce from the right (retired)

reduce

Reduce a list to a single value by iteratively applying a binary funct...

reexports

Objects exported from other packages

rerun

Re-run expressions multiple times

safely

Wrap a function to capture errors

slowly

Wrap a function to wait between executions

splice

Splice objects and lists of objects into a list

transpose

Transpose a list.

update_list

Update a list with formulas

when

Match/validate a set of conditions for an object and continue with the...

A complete and consistent functional programming toolkit for R.

  • Maintainer: Hadley Wickham
  • License: MIT + file LICENSE
  • Last published: 2025-07-10