也许有人可以为我指出正确的方向。我似乎无法为这个问题找到一个简单的解决方案
我有一个 data.table 在这里给出。
library(data.table)
dtData <- data.table(DateTime = c(1,2,1,2,3, 1,2,3,4),
Id = c(1,1,2,2,2,3,3,3,3),
LastTrade = as.Date(c('2013-01-01', '2013-01-01', '2013-06-01',
'2013-06-01', '2013-06-01', '2013-09-01',
'2013-09-01', '2013-09-01', '2013-09-01')))
我想对数据进行快速分组。所以我可以很容易地做到:
dtData[, min(LastTrade), by=DateTime]
这给了我
DateTime V1
1: 1 2013-01-01
2: 2 2013-01-01
3: 3 2013-06-01
4: 4 2013-09-01
现在我的问题是:我怎样才能得到“Id”列作为结果,而不是将最小的 LastTrade 列作为“V1”取回?
DateTime V1
1: 1 1
2: 2 1
3: 3 2
4: 4 3