使用tidyverse将组内的长向宽移位
这个我算不出来。 我如何从:使用tidyverse将组内的长向宽移位,r,tidyverse,R,Tidyverse,这个我算不出来。 我如何从: Visit Test 1 A 1 B 2 A 2 C 3 B 致: 使用dplyr和tidyr,您可以 dd %>% mutate(Value=TRUE) %>% spread(Test, Value, fill=FALSE) # Visit A B C # 1 1 TRUE TRUE FALSE # 2 2 TRUE FALSE TRUE # 3
Visit Test
1 A
1 B
2 A
2 C
3 B
致:
使用dplyr和tidyr,您可以
dd %>% mutate(Value=TRUE) %>%
spread(Test, Value, fill=FALSE)
# Visit A B C
# 1 1 TRUE TRUE FALSE
# 2 2 TRUE FALSE TRUE
# 3 3 FALSE TRUE FALSE
测试
dd<-read.table(text="Visit Test
1 A
1 B
2 A
2 C
3 B", header=T)
另一个选项是将reformae2::dcast与fun.aggregate一起使用,以检查长度是否大于0
数据:
dd<-read.table(text="Visit Test
1 A
1 B
2 A
2 C
3 B", header=T)
library(reshape2)
dcast(df,Visit~Test, fun.aggregate = function(x)length(x)>0, value.var = "Test")
# Visit A B C
# 1 1 TRUE TRUE FALSE
# 2 2 TRUE FALSE TRUE
# 3 3 FALSE TRUE FALSE
df<-read.table(text="Visit Test
1 A
1 B
2 A
2 C
3 B",
header=TRUE, stringsAsFactor = FALSE)