【发布时间】:2019-07-10 21:44:26
【问题描述】:
我有一个包含重复记录/常见记录的数据集。它看起来像这样:
| Vendor | Buyer | Amount |
|--------|:-----:|-------:|
| A | P | 100 |
| B | P | 150 |
| C | Q | 300 |
| A | P | 290 |
我需要将类似的记录组合在一起,但我不想总结我的数量。我想单独表示金额值。输出应该是这样的:
| Vendor | Buyer | Amount |
|--------|:-----:|-------:|
| A | P | 100 |
| A | P | 290 |
| | | |
| B | P | 150 |
| | | |
| C | Q | 300 |
我想过使用 split(),但由于我的原始数据有太多记录,split 函数会创建太多列表,并且从它们创建新数据集变得乏味。我怎样才能用任何其他方法实现上述输出?
编辑: 假设我们有一个名为 date 的附加列,数据集现在看起来像这样:
| Vendor | Buyer | Amount | Date |
|--------|:-----:|-------:|-----------|
| A | P | 100 | 3/6/2019 |
| B | P | 150 | 7/6/2018 |
| C | Q | 300 | 4/21/2018 |
| A | P | 290 | 6/5/2018 |
一旦将每个买家和供应商分组在一起,我需要为每个买家和供应商按升序排列日期,使其看起来像下面这样:
| Vendor | Buyer | Amount | Date |
|--------|:-----:|-------:|-----------|
| A | P | 290 | 6/5/2018 |
| A | P | 100 | 3/6/2019 |
| | | | |
| B | P | 150 | 7/6/2018 |
| | | | |
| C | Q | 300 | 4/21/2018 |
然后删除单个事务得到最终表只包含
| Vendor | Buyer | Amount | Date |
|--------|:-----:|-------:|----------|
| A | P | 290 | 6/5/2018 |
| A | P | 100 | 3/6/2019 |
【问题讨论】:
-
看来你需要
order或arrangelibrary(dplyr); df1 %>% arrange(Vendor, Buyer) -
@akrun 是的,我使用了安排,但您能帮我解决问题的编辑部分吗?
标签: r split grouping multiple-records