Заменить данное значение в векторе

Я ищу функцию, которая заменит все вхождения одного значения другим значением. Например, я хотел бы заменить все нули на единицы. Я не хочу хранить результат в переменной, но хочу иметь возможность использовать вектор анонимно как часть более крупного выражения.

Я знаю, как написать подходящую функцию самостоятельно:

> vrepl <- function(haystack, needle, replacement) {
+   haystack[haystack == needle] <- replacement
+   return(haystack)
+ }
> 
> vrepl(c(3, 2, 1, 0, 4, 0), 0, 1)
[1] 3 2 1 1 4 1

Но мне интересно, есть ли какая-то стандартная функция для этой работы, предпочтительно изbase пакет, в качестве альтернативы от некоторых других часто используемых пакетов. Я считаю, что использование такого стандарта, вероятно, сделает мой код более читабельным, и мне не придется переопределять эту функцию там, где она мне нужна.

Ответы на вопрос(6)

Ваш ответ на вопрос