将Numpy存放为腌制熊猫,腌制Numpy或HDF5

时间:2015-03-12 13:56:22

标签: python arrays numpy pandas format

我现在正在使用来自预处理项目信息的300个浮动功能。这些项目由UUID(即字符串)标识。当前文件大小约为200MB。到目前为止,我已将它们存储为Pickled numpy数组。有时我需要将项目的UUID映射到Numpy行。为此,我使用字典(存储为json)将UUID映射到numpy数组中的行。

我很想使用Pandas并将该字典替换为Pandas索引。我还发现了HF5文件格式,但我想知道何时使用它们。

我使用数组的一部分来提供基于scikit-Learn的算法,然后对其余算法进行分类。

1 个答案:

答案 0 :(得分:3)

存储酸洗的numpy数组确实不是最佳方法。相反,你可以使用,

  • numpy.savez以二进制格式保存numpy数组字典
  • 在HDF5中存储pandas DataFrame
  • 直接使用PyTables将您的numpy数组写入HDF5。

HDF5是存储科学数据的首选格式,其中包括

  • 并行读/写功能
  • 动态压缩算法
  • 高效查询
  • 使用不适合RAM的大型数据集的能力。

尽管选择输出文件格式来存储200MB的小数据集并不是那么重要,而是更方便。