Package: purrr 1.2.1.9000

Hadley Wickham

purrr: Functional Programming Tools

A complete and consistent functional programming toolkit for R.

Authors:Hadley Wickham [aut, cre], Lionel Henry [aut], Posit Software, PBC [cph, fnd]

purrr_1.2.1.9000.tar.gz
purrr_1.2.1.9000.zip(r-4.6)purrr_1.2.1.9000.zip(r-4.5)purrr_1.2.1.9000.zip(r-4.4)
purrr_1.2.1.9000.tgz(r-4.6-x86_64)purrr_1.2.1.9000.tgz(r-4.6-arm64)purrr_1.2.1.9000.tgz(r-4.5-x86_64)purrr_1.2.1.9000.tgz(r-4.5-arm64)
purrr_1.2.1.9000.tar.gz(r-4.6-arm64)purrr_1.2.1.9000.tar.gz(r-4.6-x86_64)purrr_1.2.1.9000.tar.gz(r-4.5-arm64)purrr_1.2.1.9000.tar.gz(r-4.5-x86_64)
purrr_1.2.1.9000.tgz(r-4.5-emscripten)
purrr.pdf |purrr.html
purrr/json (API)
NEWS

# Install 'purrr' in R:
install.packages('purrr', repos = c('https://tidyverse.r-universe.dev', 'https://cloud.r-project.org'))

Bug tracker:https://github.com/tidyverse/purrr/issues

Pkgdown/docs site:https://purrr.tidyverse.org

On CRAN:

Conda:

functional-programming

22.01 score 1.4k stars 7.7k packages 81k scripts 1.4M downloads 184 exports 6 dependencies

Last updated from:90e74842bc. Checks:13 OK. Indexed: yes.

TargetResultTimeFilesLog
linux-devel-arm64OK138
linux-devel-x86_64OK149
source / vignettesOK201
linux-release-arm64OK133
linux-release-x86_64OK142
macos-devel-arm64OK113
macos-devel-x86_64OK307
macos-release-arm64OK144
macos-release-x86_64OK211
windows-develOK106
windows-releaseOK113
windows-oldrelOK120
wasm-releaseOK113

Exports:%>%%||%accumulateaccumulate2array_brancharray_treeas_mapperas_vectorassign_inattr_getterauto_browsechuckcompactcomposecrosscross_dfcross2cross3detectdetect_indexdiscarddiscard_atdoneeveryexecflattenflatten_chrflatten_dblflatten_dfflatten_dfcflatten_dfrflatten_intflatten_lglflatten_rawhas_elementhead_whileimapimap_chrimap_dblimap_dfcimap_dfrimap_intimap_lglimap_rawimap_vecimodifyin_parallelinsistentlyinvokeinvoke_mapinvoke_map_chrinvoke_map_dblinvoke_map_dfinvoke_map_dfcinvoke_map_dfrinvoke_map_intinvoke_map_lglinvoke_map_rawis_atomicis_bare_atomicis_bare_characteris_bare_doubleis_bare_integeris_bare_listis_bare_logicalis_bare_numericis_bare_vectoris_characteris_doubleis_emptyis_formulais_functionis_integeris_listis_logicalis_nullis_rateis_scalar_atomicis_scalar_characteris_scalar_doubleis_scalar_integeris_scalar_listis_scalar_logicalis_scalar_vectoris_vectoriwalkkeepkeep_atliftlift_dllift_dvlift_ldlift_lvlift_vdlift_vllist_alonglist_assignlist_clist_cbindlist_flattenlist_mergelist_modifylist_rbindlist_simplifylist_transposelmaplmap_atlmap_ifmapmap_atmap_chrmap_dblmap_depthmap_dfmap_dfcmap_dfrmap_ifmap_intmap_lglmap_rawmap_vecmap2map2_chrmap2_dblmap2_dfmap2_dfcmap2_dfrmap2_intmap2_lglmap2_rawmap2_vecmodifymodify_atmodify_depthmodify_ifmodify_inmodify_treemodify2negatenonepartialpluckpluck_depthpluck_existspluck<-pmappmap_chrpmap_dblpmap_dfpmap_dfcpmap_dfrpmap_intpmap_lglpmap_rawpmap_vecpossiblyprependpwalkquietlyrate_backoffrate_delayrate_resetrate_sleeprbernoullirdunifreducereduce2rep_alongrerunsafelyset_namessimplifysimplify_allslowlysomesplicetail_whiletransposeupdate_listvec_depthwalkwalk2whenzap

Dependencies:cligluelifecyclemagrittrrlangvctrs

Functional programming in other languages

Rendered fromother-langs.Rmdusingknitr::rmarkdownon Feb 08 2026.

Last update: 2025-09-24
Started: 2017-03-21

Get started with purrr

Rendered frompurrr.Rmdusingknitr::rmarkdownon Feb 08 2026.

Last update: 2025-10-06
Started: 2025-09-28

purrr <-> base R

Rendered frombase.Rmdusingknitr::rmarkdownon Feb 08 2026.

Last update: 2025-09-24
Started: 2022-08-26

Readme and manuals

Help Manual

Help pageTopics
Accumulate intermediate results of a vector reductionaccumulate accumulate2
Coerce array to listarray-coercion array_branch array_tree
Convert an object into a mapper functionas_mapper as_mapper.character as_mapper.list as_mapper.numeric
Create an attribute getter functionattr_getter
Wrap a function so it will automatically 'browse()' on errorauto_browse
Get an element deep within a nested data structure, failing if it doesn't existchuck
Compose multiple functions together to create a new functioncompose
Find the value or position of the first matchdetect detect_index
Do every, some, or none of the elements of a list satisfy a predicate?every none some
Does a list contain an object?has_element
Find head/tail that all satisfies a predicate.head_while tail_while
Apply a function to each element of a vector, and its indeximap imap_chr imap_dbl imap_int imap_lgl imap_vec iwalk
Parallelization in purrrin_parallel parallelization
Transform a function to wait then retry after an errorinsistently
Keep/discard elements based on their valuescompact discard keep
Keep/discard elements based on their name/positiondiscard_at keep_at
Modify a listlist_assign list_merge list_modify
Combine list elements into a single data structurelist_c list_cbind list_rbind
Flatten a listlist_flatten
Simplify a list to an atomic or S3 vectorlist_simplify
Transpose a listlist_transpose
Apply a function to list-elements of a listlmap lmap_at lmap_if
Apply a function to each element of a vectormap map_chr map_dbl map_int map_lgl map_vec walk
Map/modify elements at given depthmap_depth modify_depth
Apply a function to each element of a vector conditionallymap_at map_if
Map over two inputsmap2 map2_chr map2_dbl map2_int map2_lgl map2_vec walk2
Modify elements selectivelyimodify modify modify2 modify_at modify_if
Modify a pluck locationassign_in modify_in
Recursively modify a listmodify_tree
Negate a predicate function so it selects what it previously rejectednegate
Partially apply a function, filling in some argumentspartial
Safely get or set an element deep within a nested data structurepluck pluck<- pluck_exists
Compute the depth of a vectorpluck_depth vec_depth
Map over multiple input simultaneously (in "parallel")pmap pmap_chr pmap_dbl pmap_int pmap_lgl pmap_vec pwalk
Wrap a function to return a value instead of an errorpossibly
Progress bars in purrrprogress_bars
Wrap a function to capture side-effectsquietly
Create delaying rate settingsis_rate rate-helpers rate_backoff rate_delay
Reduce a list to a single value by iteratively applying a binary functionreduce reduce2
Wrap a function to capture errorssafely
Wrap a function to wait between executionsslowly