R - Como criar a função Ifelse personalizada que se repete

Estou familiarizado com a instrução ifelse padrão de R e como criar instruções ifelse aninhadas. No entanto, eu quero criar uma versão "melhor", para que eu não precise copiar / colar, se não, tantas vezes.

Veja esta instrução ifelse aninhada, por exemplo:

df <- data.frame(b = 1:5)

df$a <- ifelse(df$b == 1,1,
        ifelse(df$b == 2,2,
        ifelse(df$b == 3,3,4)))

Em vez disso, o que eu gostaria de fazer é criar uma função que eu poderia chamar assim:

df$a <- myFunction(df$b == 1,1,
                   df$b == 2,2,
                   df$b == 3,3,4)

Eu gostaria que a função fosse capaz de pegar quantos argumentos eu inseri e, assim, saber quantas declarações ifelse incluir e depois conectá-los à posição correta, até quantos eu quiser.

Ainda existe alguma repetição, mas ao criar instruções ifelse aninhadas mais longas, seria bom não ter que repetir esse trecho de código e, em seguida, tentar acompanhar as finalizações de parênteses.

questionAnswers(4)

yourAnswerToTheQuestion