我有这个data.frame:
df <- data.frame(id=c('A','A','B','B','B','C'), amount=c(45,66,99,34,71,22))
id | amount
-----------
A | 45
A | 66
B | 99
B | 34
B | 71
C | 22
我需要扩展它,以便by
data.frame 中的每个组的长度相同(用零填充),如下所示:
id | amount
-----------
A | 45
A | 66
A | 0 <- added
B | 99
B | 34
B | 71
C | 22
C | 0 <- added
C | 0 <- added
这样做最有效的方法是什么?
笔记
对我得到的实际100 万行 data.frame提供的一些解决方案进行基准测试:
plyr | data.table | unstack
-----------------------------------
Elapsed: 139.87s | 0.09s | 2.00s