【发布时间】:2020-11-21 12:01:15
【问题描述】:
我有一个 df,其中包含 1000 多列日期(从 2017 年 1 月 1 日到 2020 年 1 月 1 日),以及 500 多个供应商的行,其中填充了每个供应商的每日销售额。 我想将它分成 3 行(供应商、日期和每日销售额),但无法理解 pivot_longer 对 2 列以上输出的工作方式。
我有什么:
+------------+------------+------------+------------+------------+
| Provider | 2017-01-01 | 2017-01-02 | 2017-01-03 | 2017-01-04 |
+------------+------------+------------+------------+------------+
| Nestle | 12 | 10 | 8 | 12 |
| Heineken | - | 3 | 1 | 3 |
| Hagen Dazs | 5 | - | - | 2 |
+------------+------------+------------+------------+------------+
我想要的输出:
| Provider | Date | Sales |
+------------+------------+-------+
| Nestle | 2017-01-01 | 12 |
| Nestle | 2017-01-02 | 8 |
| Nestle | 2017-01-03 | 10 |
| Nestle | 2017-01-04 | 12 |
| Heineken | 2017-01-02 | 3 |
| Heineken | 2017-01-03 | 1 |
| Heineken | 2017-01-04 | 3 |
| Hagen Dazs | 2017-01-01 | 5 |
| Hagen Dazs | 2017-01-04 | 2 |
+------------+------------+-------+
【问题讨论】:
-
我认为
pivot_longer(df, -1)应该可以解决问题。
标签: r date pivot-table