###把多个操作串联起来,这等价于SQL中的having
> DT<-DT[, .(V4.Sum = sum(V4)),by=V1]
> DT[V4.Sum > 35] #no chaining
V1 V4.Sum
1: 1 36
2: 2 42
这个是不使用串联的方法,先以V1为分组,对V4求和,然后再把分组总和大于35的取出来。 使用串联的方法:
> DT[, .(V4.Sum = sum(V4)),by=V1][V4.Sum > 35 ]
V1 V4.Sum
1: 1 36
2: 2 42
分组求和之后对V1进行排序:
> DT[, .(V4.Sum = sum(V4)),by=V1][order(-V1)]
V1 V4.Sum
1: 2 42
2: 1 36