Как повторить строки в таблице - PullRequest
1 голос
/ 06 апреля 2020

У меня есть две таблицы.

Table1:

+-----+--------+-------------+
| Key | region | region_name |
+-----+--------+-------------+
| ABC | NT     | NORTH       |
| ABC | ST     | SOUTH       |
| XYZ | NT     | NORTH       |
| XYZ | ST     | SOUTH       |
| DEF | ST     | SOUTH       |
+-----+--------+-------------+

Table2:

+-----+-------+------+--------+
| KEY | Sales | cost | profit |
+-----+-------+------+--------+
| ABC |   130 |  100 |     30 |
| XYZ |   120 |   95 |     25 |
| DEF |   110 |   90 |     20 |
+-----+-------+------+--------+

Я хочу, чтобы конечный результат был как ниже.

+-----+-------+------+--------+--------+-------------+
| KEY | Sales | cost | profit | region | region_name |
+-----+-------+------+--------+--------+-------------+
| ABC |   130 |  100 |     30 | NT     | NORTH       |
| ABC |   130 |  100 |     30 | ST     | SOUTH       |
| XYZ |   120 |   95 |     25 | NT     | NORTH       |
| XYZ |   120 |   95 |     25 | ST     | SOUTH       |
| DEF |   110 |   90 |     20 | ST     | SOUTH       |
+-----+-------+------+--------+--------+-------------+

Заранее спасибо ..!

1 Ответ

0 голосов
/ 06 апреля 2020

Мы можем использовать left_join

library(dplyr)
left_join(df1, df2, by = 'Key')

Или с merge в base R

merge(df1, df2, by = 'Key', all.x = TRUE)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...