在R中将数据帧保存到光盘以进行存储的最佳格式是什么?

fma*_*ark 8 persistence r data-formats

将简单数据帧保存到R盘中用于存储同时限制语义丢失的最佳格式是什么?

我问,因为我正在存档数据集.在理想的世界中,我的数据格式具有以下特征:

  1. 稳定性 - 存储格式将与R的未来版本兼容
  2. 语义兼容性 - 存储格式将理解R的主要数据类型的语义.例如,它将能够以合理的方式存储带有标签的有序因子.
  3. 开放标准 - 理想情况下,格式将是一个开放标准,因此其他统计软件包(现在或将来)将能够理解它

我的第一个想法是使用非常稳定的CSV,但缺乏所需的语义丰富性.另一方面,R的内置RData格式完全捕获了R的语义,但似乎可能在发行版之间发生变化(如果我错了,请纠正我).

是否有另一种格式可以在这三种命令之间找到平衡点?

Spa*_*man 4

将其转储到带有dput. 这样你就可以获得 R 对象的所有结构,并且它是基于文本的形式,如果 R 停止存在,可以相当容易地解析。

它可能没有通过(3),即您的“开放标准”测试。

R 与其 .RData 格式的向后兼容性非常好,因此即使最新 R 写入的文件与旧文件不同,最新 R 仍然会读取旧文件。然而,如果 R 停止存在,二进制格式的逆向工程比摸索输出要困难几个数量级dput