在 Python 中,我正在读取一个非常大的二维数据网格,该网格总共包含大约 200,000,000 个数据点。每个数据点都是 3 个 float 的元组。将所有这些数据读入二维列表经常会导致内存错误。为了解决此内存错误,我希望能够将此数据读入硬盘驱动器上的某种表中,在给定网格坐标(即 Harddrive_table.get(300, 42))时可以有效地访问该表。
到目前为止,在我的研究中,我遇到过 PyTables ,它是 HDF5 的实现,看起来有点矫枉过正,并且内置 shelve库,它使用类似字典的方法来访问保存的数据,但键必须是字符串,并且将数亿个网格坐标转换为字符串进行存储的性能可能对我的使用造成太大的性能影响。
是否有任何库允许我在硬盘驱动器上存储二维数据表,并有效访问单个数据点?
这个数据表只在程序运行时才需要,所以我不关心它的互操作性或它如何将数据存储在硬盘上,因为它会在程序运行后被删除。
最佳答案
关于python - 如何在 Python 中持久存储并有效访问非常大的二维列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63589215/