汇总 character/string 个变量

Aggregate character/string variables

我有一个数据框,其中有一个 Person Reference 列表,然后是一个 Trade,每个 person reference 可以有多个交易。我想聚合以便它显示如下数据:

Record Person Ref       Trade Code
1        512       elec, plumbing, gas
2        654            gas, plumbing
3        685              elec

等等。

我现在的密码是:

TEST<-aggregate(`Trade Code`~`Person Reference`, df, function(test)
      paste(names(table(test)[rank(-1*table(test),ties.method="min")==1],collapse=NULL))

给出错误:

> Error: unexpected symbol in: "TEST<-aggregate('Trade Code'~'Person
> Reference', age_arr, function(test)
> paste(names(table(test)[rank(-1*table(test),ties.method="min")==1],collapse=NULL))
> View"

谁能看出我哪里出错了?

你可以用 dplyrtoString 来做到这一点:

df <- read.table(text="Record Person_Ref Trade_Code
1        512       elec
1        512       plumbing
1        512       gas
2        654       gas
2        654       plumbing
3        685       elec",header=TRUE,stringsAsFactors=FALSE)

df%>%
group_by(Record,Person_Ref) %>%
summarise(catY = toString(Trade_Code))

  Record Person_Ref                catY
   <int>      <int>               <chr>
1      1        512 elec, plumbing, gas
2      2        654       gas, plumbing
3      3        685                elec