【发布时间】:2023-06-28 08:28:01
【问题描述】:
我试图使用pivot_wider() 和spread() 函数将我的数据从长格式改写为宽格式。是否可以通过多个变量(即我的数据框中的 ccode 和 year)传播到广泛的数据框组?
当前数据框:
| ccode | industry | year | TO |
|---|---|---|---|
| 2 | agri | 2000 | 8.3 |
| 2 | agri | 2001 | 9.2 |
| 2 | mineral | 2000 | 9.1 |
| 3 | agri | 2000 | 6.1 |
| 3 | agri | 2001 | 8.1 |
| 3 | mineral | 2000 | 9 |
| 4 | agri | 2000 | 9 |
| 4 | agri | 2001 | 5.3 |
| 4 | mineral | 2000 | 8.1 |
| 5 | agri | 2000 | 8.4 |
| 5 | agri | 2001 | 4.3 |
| 5 | mineral | 2000 | 4.2 |
理想结果:
| ccode | year | agri | mineral |
|---|---|---|---|
| 2 | 2000 | 8.3 | 9.1 |
| 2 | 2001 | 9.2 | NA |
| 3 | 2000 | 6.1 | 9 |
| 3 | 2001 | 8.1 | NA |
| 4 | 2000 | 9 | 8.1 |
| 4 | 2001 | 5.3 | NA |
| 5 | 2000 | 8.4 | 9.1 |
| 5 | 2001 | 4.3 | 4.2 |
谢谢。
【问题讨论】:
-
您实际上并没有通过多个变量来传播数据——您用来创建列名的唯一变量是行业。应该只是
spread或pivot_wider的一个简单用例
标签: r dataframe pivot-table tidyr spread