Я хотел бы добавить dfToAdd к df, где в первом отсутствуют столбцы. Важной деталью является то, что в df есть два типа столбцов. 1-й набор столбцов коррелирует друг с другом. Например, группа = "A" означает имя = "Группа A" и цвет = "Синий". Не может быть комбинации A-Group A-Red. 2-й тип столбцов коррелирует между собой. animal = "Dog" action = "Bark" И я хотел бы добавить этот второй фрейм данных с отсутствующими столбцами столбцов первого типа. Эти столбцы должны быть заполнены комбинациями столбцов первого типа, например следующего dfResult (порядок строк не имеет значения):
df = data.frame(group = c("A", "A", "A", "B", "B", "B"),
name = c("Group A", "Group A", "Group A", "Group B", "Group B", "Group B"),
color = c("Blue", "Blue", "Blue", "Red", "Red", "Red"),
animal = c("Dog", "Cat", "Mouse", "Dog", "Cat", "Mouse"),
action = c("Bark", "Meow", "Squeak", "Bark", "Meow", "Squeak")
)
dfToAdd = data.frame(animal = c("Lion", "Bird"),
action = c("Roar", "Chirp"))
dfResult = data.frame(group = c("A", "A", "A", "B", "B", "B", "A", "A", "B", "B"),
name = c("Group A", "Group A", "Group A", "Group B", "Group B", "Group B", "Group A", "Group A", "Group B", "Group B"),
color = c("Blue", "Blue", "Blue", "Red", "Red", "Red", "Blue", "Blue", "Red", "Red"),
animal = c("Dog", "Cat", "Mouse", "Dog", "Cat", "Mouse", "Lion", "Bird", "Lion", "Bird"),
action = c("Bark", "Meow", "Squeak", "Bark", "Meow", "Squeak", "Roar", "Chirp", "Roar", "Chirp"))
> df
group name color animal action
1 A Group A Blue Dog Bark
2 A Group A Blue Cat Meow
3 A Group A Blue Mouse Squeak
4 B Group B Red Dog Bark
5 B Group B Red Cat Meow
6 B Group B Red Mouse Squeak
> dfToAdd
animal action
1 Lion Roar
2 Bird Chirp
> dfResult
group name color animal action
1 A Group A Blue Dog Bark
2 A Group A Blue Cat Meow
3 A Group A Blue Mouse Squeak
4 B Group B Red Dog Bark
5 B Group B Red Cat Meow
6 B Group B Red Mouse Squeak
7 A Group A Blue Lion Roar
8 A Group A Blue Bird Chirp
9 B Group B Red Lion Roar
10 B Group B Red Bird Chirp
Но 1-й тип столбцов (группа, имя, цвет) не совсем известно. Я работаю с несколькими переменными группирования произвольного числа. Вы можете представить, что может быть или не быть столбец описания = «Группа A - хорошая группа» или дата = «2020.04.13». Мы точно знаем только столбцы второго типа: животное и действие.