R语言用tapply把多行重复一对一变成单行一对多格式

数据框tmp如下

1 a

1 b

1 c

2 d

3 e

要把这个数据框变成多行重复一对一变成单行一对多格式

unlist(tapply(tmp[,2],as.factor(tmp[,1]),function(x) paste(x,collapse ="|"),simplify =F))

这样就变成了

1 a|b|c

2 d

3 e

其中改变的就是三个重复一对一变成单行一对多格式1 a|b|c

 

 

Comments are closed.