我使用Python生成一个非常大的数据文件,主要由0
(false)和少量1
(true)组成。它有大约700,000列和15.000行,因此大小为10.5GB。第一行是标题
然后需要在R。
我正在寻找合适的数据格式来从Python导出我的文件。
如上所述here:
HDF5是基于行的。通过拥有表格可以获得更高的效率 不太宽,但相当长。
由于我有一张非常宽的桌子,我认为HDF5在我的情况下是不合适的?
那么什么数据格式最适合此目的?
压缩(zip)它也有意义吗?
我的档案示例:
id,col1,col2,col3,col4,col5,...
1,0,0,0,1,0,...
2,1,0,0,0,1,...
3,0,1,0,0,1,...
4,...
答案 0 :(得分:4)
Zipping不会帮助您,因为您必须解压缩才能处理它。如果您可以发布生成文件的代码,那可能会有很大帮助。 另外,你想在R中完成什么?在Python中可视化它可能更快,避免读取/写入10.5GB?
也许重新思考一下你如何存储数据的方法(例如:如果只有很少的话,存储1的坐标)可能是一个更好的角度。
例如,我可能只存储元组(600492,10786)并在R中实现相同的可视化,而不是存储700K×15K的全零表,我可能只存储元组(600492,10786)并在R中实现相同的可视化。
答案 1 :(得分:0)
SciPy有scipy.io.mmwrite
,它可以生成可由R&#39 {s} readMM
命令读取的文件。 SciPy还支持几种不同的sparse matrix representations。