I have a data.frame where some cells contain rows of separate comma values:
d <- data.frame(a=c(1:3), b=c("name1, name2, name3", "name4", "name5, name6"), c=c("name7","name8, name9", "name10" ))
I want to separate these lines where each name is split into its own cell. It is easy with
tidyr::separate_rows(d, b, sep=",")
if it is done for one column at a time. But I can not do this for both columns "b" and "c" at the same time, as this requires that the number of names in each row be the same. Instead of writing
tidyr::separate_rows(d, b, sep=",") tidyr::separate_rows(d, c, sep=",")
Is there a way to do this in one layer, for example. using? Something like
apply(d, 2, separate_rows(...))
Not sure how to pass arguments to separate_rows() .
r apply tidyr
user23413
source share