dplyr::mutate()
и dplyr::replace()
хорошо подходят для этой задачи.
DF %>%
mutate(A = replace(A, B == "a", 9999))
mutate()
создает переменную A, поэтому после выполнения она перезапишет существующую переменную A, а затем replace()
заменит значение в A с 9999
всякий раз, когда B равно «a».
Наконец, вы хотите сохранить результат, поэтому полный код выглядит следующим образом:
DF <-
DF %>%
mutate(A = replace(A, B == "a", 9999))