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

ved*_*ved 3 memory gzip r fread data.table

如果我有一个用gzip压缩的大型数据文件,比方说dat.gz,什么是更高效的内存

mydat <- fread("gunzip -c dat.gz")
Run Code Online (Sandbox Code Playgroud)

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

mydat <- fread("dat")
Run Code Online (Sandbox Code Playgroud)

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

thc*_*thc 11

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

profvis({system("gunzip -c temp.csv.gz > temp.csv"); mat <- fread("temp.csv")})
Run Code Online (Sandbox Code Playgroud)

内存使用量:190.9 MB

profvis({fread("gunzip -c temp.csv.gz")})
Run Code Online (Sandbox Code Playgroud)

内存使用量:190.8 MB

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