我对包 dplyr 的 group_by 中的汇总函数有疑问。
这是数据框的样子:
df <- read.table(text="id groups times strings
1 1 a 1 xxx
2 2 a 2 zzz
3 3 a 1 yyy
4 4 b 1 xxx
5 5 b 1 yyy
6 6 b 1 xxx
7 7 c 3 yyy
8 8 c 1 xxx
9 9 c 1 xxx
10 10 c 1 yyy", stringsAsFactors=FALSE)
我需要对变量“groups”进行分组,以获得如下所示的数据框:
view(group.df)
id2 groups2 c.string
1 1 a 'xxx','zzz','zzz','yyy'
2 2 b 'xxx','yyy','xxx'
3 3 c 'yyy','yyy','yyy','xxx','xxx','yyy'
str(group.df)
'data.frame': 3 obs. of 3 variables:
$ id2 : int 1 2 3
$ groups2 : chr "a" "b" "c"
$ c.string: chr "'xxx','zzz','zzz','yyy'" "'xxx','yyy','xxx'"
"'yyy','yyy','yyy','xxx','xxx','yyy'"
我的问题是我不知道如何编写嵌套在 group_by 中的汇总函数,以将字符串变量“df$strings”乘以“df$times”的值,仅当“df$times”>1 时。
谢谢您的帮助。