小编Jes*_*per的帖子

为什么列选择的 data.table 表示法会影响速度

速度似乎有所不同,具体取决于您如何指定要从 data.table: x[, .(var)]vs 中选择的列x[, c('var')]。其原因可能是完全显而易见的,但是在帮助页面.()list()c()符号似乎可以互换使用。我使用相当大的数据集,所以这对我来说有点重要:-)

示例(调用顺序不影响速度):

x <- as.data.table(as.character(rnorm(20000000,1,0.5)))
setkey(x, V1)

tic(); x[, .(V1)]; toc()
25.08 sec elapsed


tic(); x[, c('V1')]; toc()
0.28 sec elapsed

tic(); x[, 1]; toc()
0.02 sec elapsed

> sessionInfo()
R version 3.6.1 (2019-07-05)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 10 x64 (build 18362)

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] tictoc_1.0        data.table_1.12.8

loaded via a namespace (and …
Run Code Online (Sandbox Code Playgroud)

r data.table

10
推荐指数
1
解决办法
97
查看次数

标签 统计

data.table ×1

r ×1