【发布时间】:2015-11-21 04:59:25
【问题描述】:
我实际上想做的是使用最快的可用方法来存储data.tables 以供进一步处理。
类似的东西:
- 从 CSV/RDS 读取原始数据。
- 将其转换为
data.table。 - 将其保存为针对重读优化的格式(RDS 似乎不适用于
data.table,对吗?还有其他二进制选项吗?) - 继续处理第 3 步中的文件,一遍又一遍地将其直接读取为
data.table,进行切片、分组、绘图……
第 3 步的最佳选择是什么?
【问题讨论】:
-
你不喜欢
save()? -
我使用
save()和compress = FALSE。这是相当快的。 -
@Arthur 好吧,不是我不喜欢保存,而是
All R platforms use the XDR (bigendian) representation of C ints and doubles in binary save-d files, and these are portable across all R platforms。因此,它显然涉及我正在使用的最常见 x64 平台上的输入/输出转换。所以想知道这里有没有更好的东西,也许有人已经检查了所有选项并进行了一些测量。 -
前段时间我运行了基准测试,结果表明 sqlite 是最快的接口。我比较了 rds、db 和 csv。没有链接,但可以在 github 上的 data.table 问题中找到。
标签: r data.table