我有一个类似于这个的大型数据框:
df <- data.frame(dive=factor(sample(c("dive1","dive2"),10,replace=TRUE)),speed=runif(10))
> df
dive speed
1 dive1 0.80668490
2 dive1 0.53349584
3 dive2 0.07571784
4 dive2 0.39518628
5 dive1 0.84557955
6 dive1 0.69121443
7 dive1 0.38124950
8 dive2 0.22536126
9 dive1 0.04704750
10 dive2 0.93561651
Run Code Online (Sandbox Code Playgroud)
我的目标是在另一列等于某个值时平均一列的值,并对所有值重复此值.即在上面的示例中,我想为列speed的每个唯一值返回列的平均值dive.所以当时dive==dive1,平均值speed是这个,依此类推dive.
我正在对数据帧进行分组,并希望连接唯一的字符串.
data= data.frame(
aa=c(1,2,3,4,5,6,7,8,9,10),
bb=c('a','a','a','a','a','b','b','b','b','b'),
cc=c('hello','hello','hi','message','bye','q','w','r','r','t'))
Run Code Online (Sandbox Code Playgroud)
期望的输出:
bb cc
a 'hello hi message bye'
b 'q w r t'
Run Code Online (Sandbox Code Playgroud)
目前我正在这样做(这里建议):
result<- data %>%
group_by(bb) %>%
mutate(body = paste0(cc, collapse = "")) %>%
summarise(t_body = first(body)
Run Code Online (Sandbox Code Playgroud)
但我得到的所有字符串都不是唯一的字符串.