library(dplyr)
#> Warning: package 'dplyr' was built under R version 4.5.1
#>
#> Attaching package: 'dplyr'
#> The following objects are masked from 'package:stats':
#>
#> filter, lag
#> The following objects are masked from 'package:base':
#>
#> intersect, setdiff, setequal, union
packageVersion('dplyr')
#> [1] '1.1.4'
df <- tibble::tibble(a = c(1, 2))
x <- TRUE # variable outside the data
df |>
mutate(
a = case_when(
.env$x ~ 1,
TRUE ~ a
)
)
#> # A tibble: 2 × 1
#> a
#> <dbl>
#> 1 1
#> 2 1
df |>
mutate(
a = case_when(
.env$x ~ 1,
.default = a
)
)
#> Error in `mutate()`:
#> ℹ In argument: `a = case_when(.env$x ~ 1, .default = a)`.
#> Caused by error in `case_when()`:
#> ! `.default` must have size 1, not size 2.