Учитывая приведенные ниже примеры данных:
test_data <- tibble(
FAMILY_MEMBER_TYPE = c(rep("Father", times = 2), rep("Mother", times = 2),
rep("Daugther", times = 3), rep("Son", times = 3)),
NAME = c("Fred", "Frank", "Mary", "Megan", "Diane", "Denise", "Daisy",
"Sam", "Scott", "Steve"))
Как можно было бы создать новую переменную группировки FAMILY_NUMBER, которая показывает возможную комбинацию семейств, учитывая, что в семействе может быть только один FAMILY_MEMBER_TYPE.
Т.е. пример желаемого вывода (с 2 возможными семействами):
output_data <- tibble(
FAMILY_NUMBER = c(rep("FAMILY 1", 4), rep("FAMILY 2", 4)),
NAME = c("Fred", "Mary", "Diane", "Sam", "Fred", "Megan", "Diane","Sam"),
FAMILY_MEMBER_TYPE = c(rep(c("Father", "Mother", "Daughter", "Son"), 2)))
> output_data
# A tibble: 8 x 3
FAMILY_NUMBER NAME FAMILY_MEMBER
<chr> <chr> <chr>
1 FAMILY 1 Fred Father
2 FAMILY 1 Mary Mother
3 FAMILY 1 Diane Daughter
4 FAMILY 1 Sam Son
5 FAMILY 2 Fred Father
6 FAMILY 2 Megan Mother
7 FAMILY 2 Diane Daughter
8 FAMILY 2 Sam Son
РЕДАКТИРОВАТЬ: я изменил test_data
, чтобы содержать неравные числа FAMILY_MEMBER_TYPE, так как в практическомВ случае, если мне нужно применить это решение, группы содержат неодинаковое количество переменных.