【发布时间】:2021-04-14 16:02:42
【问题描述】:
为了正确运行绘图代码,我想重塑我的 data.table。
我的数据表目前看起来是这样的:
df <- data.frame(culture=c("A","B","C","D","A","B","C","D","A","B","C","D"),
Year=c("2000","2000","2000","2000","2001","2001","2001","2001","2002","2002","2002","2002"),
a=rep(1:6,2),
b=rep(6:11,2),
c=rep(10:15,2))
我想获得的表应该每年重复列名 a、b 和 c。所需列:culture、a_2000、b_2000、c_2000、a_2001、b_2001、c_2001、a_2002、b_2002、c_2002
有没有简单的方法可以做到这一点?
我试过了:
df1<-df %>% pivot_wider(names_from = c(3:6), values_from = value)
df1<-df %>% spread(key=c(a,b,c), value, fill=NA)
df1<-df %>% nest(a,b,c, .key = 'value_col') %>% spread(key=Jahr, value=value_col) %>% unnest('2000', '2001', '2002', .sep = '_')
从我失败的尝试中可以看出,我还没有 r 经验。
最后一次尝试我得到的建议来自:https://community.rstudio.com/t/spread-with-multiple-value-columns/5378 然而这也不起作用
有什么建议吗?
【问题讨论】: