在R中,如何将data.frame的聚合转换为data.table的聚合?

Con*_*ngo 3 aggregate r dataframe data.table

我想知道如何将aggregatea 转换为data.framea data.table.

例如,我有一个data.tablemydt:

Date       ,     Time  , Value
1899-01-01 ,  4:00:00  ,    1
1899-01-01 ,  4:01:00  ,    2
1899-01-01 ,  4:02:00  ,    3
1899-01-01 ,  4:03:00  ,    4
1899-01-01 ,  4:04:00  ,    5
1900-08-22 , 22:00:00  ,  101
1900-08-22 , 22:01:00  ,  102
2013-08-29 ,  4:00:00  , 1000
2013-02-29 ,  4:02:00  , 1001
2013-02-29 ,  4:03:00  , 1002
Run Code Online (Sandbox Code Playgroud)

我想分组Datedata.table下列格式生成:

Date      , Vector(variable length)
1899-02-28, c(1,2,3,4,5)
1900-08-22, c(101,102)
1900-08-22, c(1000,1001,1002)
Run Code Online (Sandbox Code Playgroud)

如果我正在处理a data.frame,正确的命令将是:

temp <- aggregate(Value ~ Date, mydt, as.vector) 
Run Code Online (Sandbox Code Playgroud)

如果我正在处理一个等价命令是data.table什么?

Aru*_*run 5

分组Datelist(Value)在其中使用list以获得结果作为列表.

dt[, list(Value=list(Value)), by=Date]

#           Date     Value
# 1: 1899-01-01  1,2,3,4,5
# 2: 1900-08-22    101,102
# 3: 2013-08-29       1000
# 4: 2013-02-29  1001,1002
Run Code Online (Sandbox Code Playgroud)