数据集如下:
输出应如下
我尝试过以下事情
sum <- gather(Learning_platform, A,B)
我使用了来自gather
的{{1}}函数,但它没有给出我想要的结果。它只收集数据并用下划线分隔。 2。tidyr
这也没有用,因为R无法处理因子的总和。
df %>% group_by(A) %>% summarise(B = sum(B))
包中的以下示例无效: tidyr
请为上述示例提供解决方案或学习材料。
答案 0 :(得分:2)
我们可以使用gather
library(tidyverse)
gather(df1, key, val, - ID) %>%
filter(val != "") %>%
select(-key) %>%
arrange(ID)
如果空白为NA
,那么我们可以删除gather
内的这些元素
gather(df1, key, val, -ID, na.rm = TRUE) %>%
select(-key) %>%
arrange(ID)
答案 1 :(得分:1)
我们也可以使用reshape2
。
reshape(df, idvar = "ID", varying = list(2:5), direction = "long") %>%
arrange(ID) %>% select(-time)