You can do something like this but have in mind that all the affected variables are going to be converted to class "character".
library(tidyverse)
sample_df <- tibble::tribble(
~enumerator, ~l1el4_identify_letter3, ~l1el4_identify_letter4, ~l1el4_identify_letter5, ~l1el4_total, ~l1el5_dummy, ~l1el5_match_pic1,
"PEN008", 0L, 1L, 1L, 0L, 0L, 0L,
"PEN001", 1L, 1L, 1L, 1L, 0L, 1L,
"PEN006", 0L, 1L, 98L, 1L, 1L, 0L,
"PEN006", 0L, 0L, 0L, 0L, 0L, 0L,
"PEN010", 1L, 0L, 0L, 1L, 98L, 0L,
"PEN010", 98L, 1L, 0L, 0L, 0L, 0L,
"PEN003", 1L, 0L, 0L, 1L, 0L, 0L,
"PEN003", 1L, 1L, 0L, 0L, 0L, 1L
)
sample_df %>%
mutate(across(everything(), ~ if_else(. == 98, "No Response", as.character(.))))
#> # A tibble: 8 × 7
#> enumerator l1el4_identify_le… l1el4_identify_le… l1el4_identify_l… l1el4_total
#> <chr> <chr> <chr> <chr> <chr>
#> 1 PEN008 0 1 1 0
#> 2 PEN001 1 1 1 1
#> 3 PEN006 0 1 No Response 1
#> 4 PEN006 0 0 0 0
#> 5 PEN010 1 0 0 1
#> 6 PEN010 No Response 1 0 0
#> 7 PEN003 1 0 0 1
#> 8 PEN003 1 1 0 0
#> # … with 2 more variables: l1el5_dummy <chr>, l1el5_match_pic1 <chr>
Created on 2021-10-30 by the reprex package (v2.0.1)