如何使用sqldf对行进行分组和粘贴值

时间:2014-04-08 22:32:09

标签: sqldf

我现在的数据看起来像这样:

V1  V2  V3  V4
a   1   2  name1
b   3   4  name2
b   3   4  name3
c   2   5  name4

我希望通过使用sqldf

基于V1,V2,V3进行分组来获得此结果
V1  V2  V3  V4
a   1   2  name1
b   3   4  name2+name3
c   2   5  name4

我正在考虑使用......

sqldf("select *, paste(V4) as V5 from table group by V1,V2,V3")

但我找不到正确的功能,因为"粘贴"以上。我写了一个复杂的循环来解决这个问题,但我想知道是否有一个简单的方法。有人可以帮帮我吗?任何输入将非常感谢!谢谢你的时间!

谢谢, Raine的

1 个答案:

答案 0 :(得分:0)

试试这个:

sqldf("select V1, V2, V3, group_concat(V4) V4 from DF group by V1, V2, V3")

,并提供:

  V1 V2 V3          V4
1  a  1  2       name1
2  b  3  4 name2,name3
3  c  2  5       name4