【发布时间】:2021-07-26 23:39:19
【问题描述】:
我有一个非常大的表,它遵循以下结构(我在这里简化了过去):
| Product | Line | Name | Quantity | Unit | Cost |
|---|---|---|---|---|---|
| Pepe | 10000 | Lucia | 4 | UD | 8 |
| Pepe | 70000 | Santiago | 7 | UD | 5.5 |
| Pepe | 70000 | Mariangeles | 10 | KG | 6 |
| Antonio | 10000 | Naiara | 4 | KG | 8 |
| Antonio | 70000 | Toni | 7 | KG | 3 |
| Vanesa | 10000 | Lucia | 4 | UD | 8 |
| Vanesa | 50000 | Santiago | 7 | KG | 8 |
| Vanesa | 50000 | Toni | 10 | KG | 3 |
| Vanesa | 50000 | Gines | 4 | KG | 8 |
我需要转换列 Line,我需要重复的数字 (70000, 50000...) 看起来像每个产品的等级 (10000, 20000, 30000, 40000, 50000...)。
| Product | Line | Name | Quantity | Unit | Cost |
|---|---|---|---|---|---|
| Pepe | 10000 | Lucia | 4 | UD | 8 |
| Pepe | 20000 | Santiago | 7 | UD | 5.5 |
| Pepe | 30000 | Mariangeles | 10 | KG | 6 |
| Antonio | 10000 | Naiara | 2 | KG | 8 |
| Antonio | 20000 | Toni | 7 | KG | 3 |
| Vanesa | 10000 | Lucia | 4 | UD | 8 |
| Vanesa | 20000 | Santiago | 7 | KG | 8 |
| Vanesa | 30000 | Toni | 10 | KG | 3 |
| Vanesa | 40000 | Gines | 4 | KG | 8 |
我可以使用 SQL(DBeaver 或 Microsoft Access)或 R 来完成,我正在考虑使用 R 循环或使用 count() 的 SQL 复杂查询,但非常感谢一些帮助。
非常感谢。
【问题讨论】:
-
在 R 中,使用 dplyr:
dfr %>% group_by(Product) %>% mutate(Line = row_number() * 10000)