R 数据转换(收集?)
我有以下几点:R 数据转换(收集?),r,R,我有以下几点: ~id, ~a, ~b, ~c, ~d, 1, 10, 20, 33, 42, 2, 30, 20, 32, 42, 3, 34, 24, 35, 32, 4, 32, 24, 35, 25, 5, 22, 14, 35, 36, ... ) 但我更希望它是那种形式(仅列‘a’和‘b’) 有人知道如何得到它吗?我认为可以使用“gather()”来完成,但我没有设法让它工作: newTable <- oldTable %>% gather(a, b, value='c
~id, ~a, ~b, ~c, ~d,
1, 10, 20, 33, 42,
2, 30, 20, 32, 42,
3, 34, 24, 35, 32,
4, 32, 24, 35, 25,
5, 22, 14, 35, 36,
...
)
但我更希望它是那种形式(仅列‘a’和‘b’)
有人知道如何得到它吗?我认为可以使用“gather()”来完成,但我没有设法让它工作:
newTable <- oldTable %>% gather(a, b, value='cases')
newTable%gather(a,b,value='cases')
使用?收集
阅读有关如何使用收集
功能的更多信息
library(dplyr)
library(tidyr)
oldTable %>% select(-c, -d) %>% gather(key = aOrB, value = value, -id)
编辑:如果要保留c
和d
,但不堆叠:
oldTable %>% gather(key = aOrB, value = value, -id, -c, -d)
如果要保留c
和d
,并与a
和b
一起堆放:
oldTable %>% gather(key = aOrBOrCOrd, value = value, -id)
谢谢,效果很好。但我是否有可能在新的TIBLE中保留其他列c和d,而不转换它们?编辑了我的回答。
oldTable %>% gather(key = aOrBOrCOrd, value = value, -id)