R/adverb-negate.R
negate.RdNegating a function changes TRUE to FALSE and FALSE to TRUE.
negate(.p)A predicate function (i.e. a function that returns either TRUE
or FALSE) specified in one of the following ways:
A named function, e.g. is.character.
An anonymous function, e.g. \(x) all(x < 0) or function(x) all(x < 0).
A formula, e.g. ~ all(.x < 0). Use .x to refer to the first argument.
No longer recommended.
A new predicate function.
This function is called an adverb because it modifies the effect of a function (a verb). If you'd like to include a function created an adverb in a package, be sure to read faq-adverbs-export.
Other adverbs:
auto_browse(),
compose(),
insistently(),
partial(),
possibly(),
quietly(),
safely(),
slowly()
x <- list(x = 1:10, y = rbernoulli(10), z = letters)
x |> keep(is.numeric) |> names()
#> [1] "x"
x |> keep(negate(is.numeric)) |> names()
#> [1] "y" "z"
# Same as
x |> discard(is.numeric)
#> $y
#> [1] TRUE FALSE FALSE TRUE TRUE FALSE FALSE TRUE FALSE FALSE
#>
#> $z
#> [1] "a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "k" "l" "m" "n" "o" "p" "q" "r" "s"
#> [20] "t" "u" "v" "w" "x" "y" "z"
#>