[datatable-help] [data.table] Aggregate as vector

Frank Erickson fperickson at wisc.edu
Thu Jun 25 21:48:54 CEST 2015


Hi,

I think you want

dt[,.(list(V1)),by=V2]
#    V2  V1
# 1:  a 1,4
# 2:  b 2,3


Using the .() notation makes it easier to keep track of what columns are
being made, I find.

--Frank

On Thu, Jun 25, 2015 at 3:46 PM, Nicolas Paris <niparisco at gmail.com> wrote:

> Hi,
>
> Here an example what I want to get :
>
> > dt <- data.table(c(1,2,3,4),c("a","b","b","a"))
> > dt
>    V1 V2
> 1:  1  a
> 2:  2  b
> 3:  3  b
> 4:  4  a
>
> What I want to get is a V3 column, containing an aggregated vector :
> > dt
>    V1 V2 V3
> 1:  1  a   c(1,4)
> 2:  2  b   c(2,3)
>
> That does not work :
>
> dt[,V3 := as.list(c(V1)),by=V2]
>
> Is there a way to do so ?
>
> Thanks
>
>
>
> _______________________________________________
> datatable-help mailing list
> datatable-help at lists.r-forge.r-project.org
> https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/datatable-help
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.r-forge.r-project.org/pipermail/datatable-help/attachments/20150625/77215c4a/attachment.html>


More information about the datatable-help mailing list