Сравнение двух фреймов данных по нескольким столбцам одновременно в R - PullRequest
0 голосов
/ 05 июня 2018

У меня есть 2 фрейма данных:

df1
Syllable Duration
Bis      0.18
Zeks     0.34
Ben      0.11

df2
Syllable Duration Pitch
Bis      0.18     78
Zeks     0.34     67
Bs       0.19     34
Ben      0.11     69

И мне нужно получить новый фрейм данных, как это:

df3
Syllable Duration Pitch
Bis      0.18      78
Zeks     0.34      67
Ben      0.11      69

Я пробовал много вещей, но ничего не получалосьчто я хочу.Любая помощь будет иметь значение для меня.

Это одна из вещей, которые я пробовал:

df1$Pitch <- df1$Pitch[match(df2$Syllable[df2$Duration],df1$Syllable[df1$Duration])]

1 Ответ

0 голосов
/ 05 июня 2018

Комментарии верны.Но если у вас есть дубликаты в ваших данных, это может привести к умножению строк в вашем результате.Используйте это, чтобы избавиться от дубликатов:

df3 <- merge(df2, df1[!duplicated(df1$Syllable),], by="Syllable")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...