Find head/tail that all satisfies a predicate.
Arguments
- .x
A list or atomic vector.
- .p
A single predicate function, a formula describing such a predicate function, or a logical vector of the same length as
.x
. Alternatively, if the elements of.x
are themselves lists of objects, a string indicating the name of a logical element in the inner lists. Only those elements where.p
evaluates toTRUE
will be modified.- ...
Additional arguments passed on to the mapped function.
We now generally recommend against using
...
to pass additional (constant) arguments to.f
. Instead use a shorthand anonymous function:This makes it easier to understand which arguments belong to which function and will tend to yield better error messages.
Examples
pos <- function(x) x >= 0
head_while(5:-5, pos)
#> [1] 5 4 3 2 1 0
tail_while(5:-5, negate(pos))
#> [1] -1 -2 -3 -4 -5
big <- function(x) x > 100
head_while(0:10, big)
#> integer(0)
tail_while(0:10, big)
#> integer(0)