我有以下数据集:
id date wt ht
1 2/3/2020 2.2 1.5
1 2/3/2020 2.3 1.45
1 2/3/2020 2.4 1.54
2 2/5/2020 2.3 1.8
2 2/5/2020 2.2 1.99
3 2/8/2020 3.2 2.8
3 2/8/2020 3.4 2.9
并且想要将其转换为以下内容
id date wt1 wt2 wt3 ht1 ht2 ht3
1 2/3/2020 2.2 2.3 2.4 1.5 1.45 1.54
2 2/5/2020 2.3 2.2 NA 1.8 1.99
3 2/8/2020 3.2 3.4 NA 2.8 2.9
我尝试过dcast:
dcast(data, id + date ~ wt + ht)
但还没有达到预期的结果。有没有更好的方法来解决这个问题?
使用dcast
中的data.table
,可以在value.var
中指定多个“值”列,并在公式中根据[ID],“日期”和rowid
指定顺序