Используйте rep
с аргументом each
для повторения каждого имени.Затем используйте paste
, чтобы объединить их с суффиксом.
paste(rep(names, each = 2), c("a", "b"), sep = "")
Давайте посмотрим на это снова в замедленном режиме:
suffixes <- c("a", "b") # or letters[1:2] if you're feeling fancy
n_suffixes <- length(suffixes)
repeated_names <- rep(names, each = n_suffixes)
final_names <- paste(repeated_names, suffixes, sep = "")
Необычная альтернативная версия с использованием внешних продуктов:
as.vector(t(outer(names, suffixes, paste, sep = "")))
Хотя я думаю, что это больше для хвастовства, так как он менее читабелен.