用gunzip畏惧:内存效率更高的方式是什么?

时间:2017-04-26 19:14:18

标签: r memory data.table gzip fread

如果我有一个用gzip压缩的大型数据文件,比如说dat.gz,那么内存的效率是多少?

mydat <- fread("gunzip -c dat.gz")

或者,首先解压缩/解压缩文件,例如dat,然后执行

mydat <- fread("dat")

我关注记忆而不是速度,以防止R崩溃。

1 个答案:

答案 0 :(得分:11)

我为temp.csv写了一个5000x5000矩阵,并使用profvis描述了两种方法的内存使用情况:

profvis({system("gunzip -c temp.csv.gz > temp.csv"); mat <- fread("temp.csv")})

内存使用量:190.9 MB

profvis({fread("gunzip -c temp.csv.gz")})

内存使用量:190.8 MB

我运行了几次,两个命令的内存使用率在190-191之间波动。所以我得出结论,内存使用情况是一样的。