R data.table聚合中的第一个元素

R data.table聚合中的第一个元素,r,data.table,R,Data.table,我有一个data.table滴答声数据,我想将其聚合到秒的时间范围内。在获取max时,min和last非常简单: data[, list(max(value), min(value), last(value)), by=time] 我正在努力获取与第二个时间戳对应的第一个数据点。手册里没有任何东西。有没有一种简单的方法,比如说SQLTOP?我设法找到了解决方案。获取第一个元素的查询是使用[将该列的第一个值子集: data[, list(value[1], max(value), min(val

我有一个data.table滴答声数据,我想将其聚合到秒的时间范围内。在获取
max
时,
min
last
非常简单:

data[, list(max(value), min(value), last(value)), by=time]

我正在努力获取与第二个时间戳对应的第一个数据点。手册里没有任何东西。有没有一种简单的方法,比如说SQL
TOP

我设法找到了解决方案。获取第一个元素的查询是使用
[
将该列的第一个值子集:

data[, list(value[1], max(value), min(value), last(value)),by=time]

也许它对某人有帮助。

似乎
首先
是一个有效的聚合

foo <- data.table(x=1:10, y=11:20)
     x  y
 1:  1 11
 2:  2 12
 3:  3 13
 4:  4 14
 5:  5 15
 6:  6 16
 7:  7 17
 8:  8 18
 9:  9 19
10: 10 20

foo[, .(first(x), last(x))]

    V1 V2
1:  1 10
foo
first(value)
相当于
value[1]
last(value)
value[.N]