【发布时间】:2013-06-06 14:59:35
【问题描述】:
我有一个非常大的数据文件需要解析。我编写了一些组函数并使用字典来处理我的小型数据集。
但是,更大的数据集不起作用。这是我的数据集在 csv 文件中的样子:
123.0001, 'axis a', 'axis b', 'axis c'
123.0002, 'axis a', 'axis b', 'axis c'
123.0003, 'axis a', 'axis b', 'axis c'
123.0003, 'axis a', 'axis b', 'axis c'
123.0009, 'axis a', 'axis b', 'axis c'
文件大小约为 20 GB。我想使用熊猫加载这个文件并按时间分组。 123.0001 是纪元时间,有数百个。但是,它们不是线性的。也就是说,他们可能会跳过几秒钟。同一秒内可能还会记录一些不同的事件。甚至是微秒。
假设我想将它们分成 1 分钟间隔的块,并计算在设定的间隔中有多少。
我将如何使用 pandas 来做到这一点?
注意,我已经使用标准字典和列表在没有 pandas 的情况下工作。但是,为大型数据集生成结果大约需要 3 个小时。
如果您有更好的解决方案,请告诉我。
【问题讨论】:
-
相关:this SO question 和 this pull request 即将对 pandas 进行增强
-
A) 阅读本身需要多长时间? B) 你厌倦了使用
sort()吗?排序后的数据要容易得多,幸运的是你的问题可以通过排序来解决。可能 Panda 也已经包含了优化排序!