dplyr中的字符串操作/聚合

Pra*_*eep 10 r dplyr

我想执行group_by并使用dplyr对数据帧执行字符串操作

df<-data.frame(varx=c("x1","x1","x2","x2","x2"),vary=c("y1","y2","y3","y4","y5"))
Run Code Online (Sandbox Code Playgroud)

我希望输出(newdf)看起来像这样:

newdf <- data.frame(varx=c("x1","x2"),catY=c("y1,y2","y3,y4,y5"))
Run Code Online (Sandbox Code Playgroud)

我在dplyr中尝试了以下内容

df %>% group_by(varx)%>%summarise(catY=paste(vary))
Error: expecting a single value
Run Code Online (Sandbox Code Playgroud)

还尝试了以下内容:

df %>% group_by(varx)%>%mutate(catY=paste(vary))

Source: local data frame [5 x 3]
Groups: varx
Run Code Online (Sandbox Code Playgroud)

我可以使用基本数据帧操作来完成它.需要帮助来理解dplyr中的出路.

tal*_*lat 10

大卫评论的略短版本将是:

library(dplyr)
df %>% group_by(varx) %>% summarise(catY = toString(vary))

#Source: local data frame [2 x 2]
#
#  varx       catY
#1   x1     y1, y2
#2   x2 y3, y4, y5
Run Code Online (Sandbox Code Playgroud)