gpt4 book ai didi

将 R 数据框中的数据从行 reshape 为列

转载 作者:行者123 更新时间:2023-12-04 11:26:10 26 4
gpt4 key购买 nike

我想 reshape 数据帧中的数据,其形式如下:

a  b  Type_c d  e  
1 1 0 10 9
2 1 0 20 9
3 2 1 30 4
4 2 2 40 3
5 3 3 50 2
6 3 0 60 1
7 4 3 70 2
8 4 2 80 7
9 4 2 90 8

并且希望通过 reshape 或转换来获取以下格式的数据。

a  b  Type_0_d Type_0_e Type_1_d Type_1_e type_2_d type_2_e type_3_d  type_3_e  
1 1 10 9 0 0 0 0 0 0
2 1 20 9 0 0 0 0 0 0
3 2 0 0 30 4 0 0 0 0
4 2 0 0 0 0 40 3 0 0
5 3 0 0 0 0 0 0 50 2
6 3 60 1 0 0 0 0 0 0
7 4 0 0 0 0 0 0 70 2
8 4 0 0 0 0 80 7 0 0
9 4 0 0 0 0 90 8 0 0

我发现在 R 中做同样的事情并不困难。但是,在 Tableau 中却很简单。只是想知道是否有办法在 R 中有效地执行相同的操作。

最佳答案

我们可以使用 data.table 中的 dcast,它可以采用多个 value.var

library(data.table)
dcast(setDT(df1), a+b ~paste0("Type_", Type_c), value.var = c("d", "e"), fill = 0)

关于将 R 数据框中的数据从行 reshape 为列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38790257/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com