我有很多表(大约200K)每个小(通常少于1K行和10列),我需要在熊猫中尽快读取。用例非常典型:一个函数一次加载一个表,计算它们并存储最终结果(不将表的内容保存在内存中)。
这已经完成了很多次,我可以选择这些表的存储格式以获得最佳(速度)性能。 什么natively supported存储格式最快?
答案 0 :(得分:1)
IMO在这种情况下有几个选项:
使用HDF Store(AKA PyTable,H5)作为@jezrael has already suggested。您可以决定是否要对部分/全部表进行分组,并使用不同的标识符(或Pandas术语中的.h5
)将它们存储在同一keys
文件中
使用新的极速Feather-Format (part of the Apache Arrow project)。注意:它仍然是一种新格式,因此将来可能会更改其格式,这可能导致不同版本的羽毛格式模块之间不兼容。您也不能将多个DF放在一个feather
文件中,因此您无法将它们分组。
使用数据库存储/读取表格。 PS它可能比你的用例慢。
PS你可能还想检查this comparison,特别是如果你想以压缩格式存储你的数据