¿Cómo reemplazo los códigos numéricos con etiquetas de valor de una tabla de búsqueda?

Esta pregunta está relacionada conesta pregunta, pero no exactamente lo mismo.

Digamos que tengo este marco de datos,

<code>df <- data.frame(
                id = c(1:6),
                profession = c(1, 5, 4, NA, 0, 5))
</code>

y una cadena con información legible por humanos sobre los códigos de profesión. Decir,

<code>profession.code <- c(
                     Optometrists=1, Accountants=2, Veterinarians=3, 
                     `Financial analysts`=4,  Nurses=5)
</code>

Ahora, estoy buscando la manera más fácil de reemplazar los valores endf$profession con el texto encontrado enprofession.code. Preferiblemente sin el uso de bibliotecas especiales, a menos que acorte el código significativamente.

Me gustaría que mi resultado final fuera

<code>df <- data.frame(
                id = c(1:6),
                profession = c("Optometrists", "Nurses", 
                "Financial analysts", NA, 0, "Nurses"))
</code>

Cualquier ayuda sería muy apreciada.

Gracias eric

Respuestas a la pregunta(3)

Su respuesta a la pregunta