Preencher uma coluna usando instruções if em r

Eu tenho uma pergunta bem simples com a qual eu estou atualmente lutando. Se eu tiver um exemplo de dataframe:

a <- c(1:5)  
b <- c(1,3,5,9,11)
df1 <- data.frame(a,b)

Como faço para criar uma nova coluna ('c') que é então preenchida usando instruções if na coluna b. Por exemplo: 'cat' para aqueles valores em b que são 1 ou 2 'dog' para aqueles valores em b que são entre 3 e 5 'rabbit' para aqueles valores em b que são maiores que 6

Então, a coluna 'c' usando o dataframe df1 seria: gato, cachorro, cachorro, coelho, coelho.

Muito obrigado antecipadamente.

questionAnswers(3)

yourAnswerToTheQuestion