似乎最直观的是 .rdata 文件可能是 R 加载的快速文件格式,但是在扫描一些堆栈帖子时,似乎更多的注意力集中在提高 .csv 或其他格式的加载时间上。有确定的答案吗?
最佳答案
不是一个明确的答案,但下面是使用函数 timed19x7460 加载作为 .tab
文件读取的相同数据帧所需的时间:utils::read.delim()
与 readr::read_tsv()
system.time(
read.delim("file.tab")
)
# user system elapsed
# 52.279 0.146 52.465
data.table::fread()
与 .RData
system.time(
read_tsv("file.tab")
)
# user system elapsed
# 23.417 0.839 24.275
system.time()
与 .tab
在@Roman 的请求下,在 3 秒内加载了相同的 ~500MB 文件:
system.time(
data.table::fread("file.tab")
)
# Read 49739 rows and 3005 (of 3005) columns from 0.400 GB file in 00:00:04
# user system elapsed
# 3.078 0.092 3.172
utils::read.delim
相同数据帧的二进制文件system.time(
load("file.RData")
)
# user system elapsed
# 2.181 0.028 2.210
显然不是确定的(样本大小 = 1!)但在我的情况下有 500MB 的数据帧:
.tab
最快 readr::read_tsv
是接近第二个 .tab
比 data.table::fread
最慢,只有 .RData
关于r - 读入 R 最快的文件格式是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30665896/