Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Summary group_by函数中,如何将字符串变量n倍乘以另一个变量的值?_R_Group By_Dplyr_Summarize - Fatal编程技术网

在Summary group_by函数中,如何将字符串变量n倍乘以另一个变量的值?

在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

我对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     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”