С помощью nchar
вы можете обнаружить ячейки с одним символом и комбинировать их с paste
в строке apply
. Используйте unname
, чтобы получить более четкий вывод.
apply(d, 1, function(x) {
unname(c(paste(x[which(nchar(x) == 1)], collapse=""), x[which(nchar(x) != 1)]))
})
# [[1]]
# [1] "milk" "200" "gr." "low" "fat"
#
# [[2]]
# [1] "CHeese" "200" "gr."
#
# [[3]]
# [1] "low" "milk" "fat" "1.5" "liter" "0%"
Данные
d <- structure(list(v1 = c("m", "C", "milk"), v2 = c("i", "H", "l"
), v3 = c("l", "e", "o"), v4 = c("k", "e", "w"), v5 = c("200",
"s", "fat"), v6 = c("gr.", "e", "1.5"), v7 = c("low", "200",
"liter"), v8 = c("fat", "gr.", "0%")), row.names = c(NA, -3L), class = "data.frame")