我目前正在重写一些 python 代码以使其更高效,并且我有一个关于保存 python 数组以便以后可以重用/操作的问题。
我有大量数据,保存在 CSV 文件中。每个文件都包含我感兴趣的数据的时间戳值,并且我已经达到了必须处理数千万个数据点的地步。现在数据变得如此之大,以至于处理时间过多且效率低下——当前代码的编写方式每次添加一些新数据时都必须重新处理整个数据集。
我想做的是:
- 将所有现有数据读入 python 数组
- 将变量数组保存到某种数据库/文件
- 然后,下次添加更多数据时,我会加载我的数据库,附加新数据并重新保存它。这样,任何时候只需要处理少量数据。
- 我希望保存的数据可以被进一步的 python 脚本访问,但也可以相当“人类可读”,以便可以在 OriginPro 甚至 Excel 等程序中处理它。
我的问题是:保存数据的最佳格式是什么?HDF5 似乎具有我需要的所有功能——但是像 SQLite 这样的东西会更有意义吗?
编辑:我的数据是一维的。我基本上有 30 个大小为(百万,1)的数组。如果不是因为有这么多点,那么 CSV 将是一种理想的格式!我不太可能想要查找单个条目——更有可能是我可能想要绘制数据的小子集(例如,过去 100 小时或过去 1000 小时等)。