Я гуглил "R кардинальные числа" и попал в виньетка для пакета toOrdinal , но, к сожалению, он на самом деле не дает вам слов.
library(toOrdinal)
sapply(1:5,toOrdinal)
## [1] "1st" "2nd" "3rd" "4th" "5th"
В документах написано
convert_to: НЕОБЯЗАТЕЛЬНО. Тип вывода, который предоставил 'cardinal_number', является
конвертирован в. По умолчанию это 'ordinal_number', который относится к
'cardinal_number', за которым следует соответствующий порядковый номер
индикатор. Запланированные дополнительные опции включают 'ordinal_word'.
так что, возможно, это в конечном итоге будет делать то, что вы хотите ...