在Summary group_by函数中,如何将字符串变量n倍乘以另一个变量的值?
我对dplyr包的group_by中的summary函数有问题 这是dataframe的外观:在Summary group_by函数中,如何将字符串变量n倍乘以另一个变量的值?,r,group-by,dplyr,summarize,R,Group By,Dplyr,Summarize,我对dplyr包的group_by中的summary函数有问题 这是dataframe的外观: 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
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)
我的问题是,我不知道如何将嵌套在group_by中的summary函数编码为将字符串变量“df$strings”乘以“df$times”的值,仅当“df$times”大于1时
谢谢您的帮助。看起来您只是忽略了id列,所以这应该可以工作
df %>%
group_by(groups) %>%
summarize(c.string=paste(sQuote(rep(strings, times)), collapse=","))
# groups c.string
# <chr> <chr>
# 1 a ‘xxx’,‘zzz’,‘zzz’,‘yyy’
# 2 b ‘xxx’,‘yyy’,‘xxx’
# 3 c ‘yyy’,‘yyy’,‘yyy’,‘xxx’,‘xxx’,‘yyy’
df%>%
分组依据(组)%>%
汇总(c.string=paste(sQuote(rep(strings,times)),collapse=“,”)
#组c.string
#
#1 a“xxx”、“zzz”、“zzz”、“yyy”
#2b“xxx”、“yyy”、“xxx”
#3 c“yyy”、“yyy”、“yyy”、“xxx”、“xxx”、“yyy”
看起来您只是忽略了id列,所以这应该可以工作
df %>%
group_by(groups) %>%
summarize(c.string=paste(sQuote(rep(strings, times)), collapse=","))
# groups c.string
# <chr> <chr>
# 1 a ‘xxx’,‘zzz’,‘zzz’,‘yyy’
# 2 b ‘xxx’,‘yyy’,‘xxx’
# 3 c ‘yyy’,‘yyy’,‘yyy’,‘xxx’,‘xxx’,‘yyy’
df%>%
分组依据(组)%>%
汇总(c.string=paste(sQuote(rep(strings,times)),collapse=“,”)
#组c.string
#
#1 a“xxx”、“zzz”、“zzz”、“yyy”
#2b“xxx”、“yyy”、“xxx”
#3 c“yyy”、“yyy”、“yyy”、“xxx”、“xxx”、“yyy”