汇总 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"
谁能看出我哪里出错了?
你可以用 dplyr
和 toString
来做到这一点:
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
我有一个数据框,其中有一个 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"
谁能看出我哪里出错了?
你可以用 dplyr
和 toString
来做到这一点:
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