有没有快速的方法来进行DataFrame的序列化?
我有一个可以并行运行熊猫分析的网格系统.最后,我想从每个网格作业中收集所有结果(作为DataFrame),并将它们聚合成一个巨大的DataFrame.
如何以可快速加载的二进制格式保存数据框?
And*_*den 18
最简单的方法就是使用to_pickle(作为pickle),请参阅docs api页面中的pickle:
df.to_pickle(file_name)
Run Code Online (Sandbox Code Playgroud)
另一种选择是使用HDF5,稍微开始工作但查询更丰富.
DataFrame.to_msgpack是实验性的,并且没有一些问题,例如使用Unicode,但它比酸洗快得多.它序列化了一个拥有500万行的数据帧,在大约2秒内占用了2-3 Gb的内存,结果文件大约为750 Mb.加载速度稍慢,但仍然比unpickling更快.