Functions like starts_with(), contains() or matches() are
selection helpers that only work in a selection context.
Examples of valid selection contexts are:
Inside dplyr::select().
The cols argument of tidyr::pivot_longer().
Using a selection helper anywhere else results in an error:
starts_with("foo")
#> Error: `starts_with()` must be used within a *selecting* function.
#> i See <https://tidyselect.r-lib.org/reference/faq-selection-context.html>.mtcars[contains("foo")]
#> Error: `contains()` must be used within a *selecting* function.
#> i See <https://tidyselect.r-lib.org/reference/faq-selection-context.html>.
subset(mtcars, select = matches("foo"))
#> Error: `matches()` must be used within a *selecting* function.
#> i See <https://tidyselect.r-lib.org/reference/faq-selection-context.html>.
If you see this error, you<U+2019>ve probably used a selection helper in the wrong place, possibly as the result of a typo (e.g.<U+00A0>misplaced comma or wrong argument name).