r - 读入 R 最快的文件格式是什么?

标签 r csv load readr rdata

似乎最直观的是 .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/

    相关文章:

    Read.CSV 在 R 中没有按预期工作

    java - ConceptNet 数据库与 Java 的连接

    hadoop - hive中如何自动加载数据

    javascript - jQuery 不能在 Chrome 中 $(...).load() 标题

    r - 在 R 中编辑...参数

    r - 将 NA 值的框添加到 ggplot 图例以获得连续 map

    r - 按时差压扁多行

    java - 用java编写时,仅在csv文件中添加一行

    php - 使用仅工作一次的 jquery 加载函数重新加载 div 以及如何传递变量

    r - 将绘图数据从 R 导出到 Excel