R data.table-汇总数据-“按”和“按”之间的差异?

R data.table-汇总数据-“按”和“按”之间的差异?,r,data.table,R,Data.table,我注意到以下两个命令产生了非常不同的结果,所以我想知道区别是什么 TestData <- TestData[, keyby = c("group","date"), .(totalCount = sum(count))] TestData <- TestData[, by = c("group","date"), .(totalCount = sum(count)

我注意到以下两个命令产生了非常不同的结果,所以我想知道区别是什么

TestData <- TestData[, keyby = c("group","date"), 
                             .(totalCount = sum(count))]

TestData <- TestData[, by = c("group","date"), 
                             .(totalCount = sum(count))]

TestData使用
keyby
而不是
by
将使结果行按您分组的列排序。 否则,当使用
by
时,结果的行顺序将保留为组在输入数据中的顺序。
拥有有序的数据可以加速进一步的计算。另一方面,用户可能需要原始订单。在大多数情况下,
keyby
将比
by

稍快,使用
keyby
而不是
by
将使结果行按您分组的列排序。 否则,当使用
by
时,结果的行顺序将保留为组在输入数据中的顺序。 拥有有序的数据可以加速进一步的计算。另一方面,用户可能需要原始订单。在大多数情况下,
keyby
将略快于
by