在Python中的大型数据集上使用OOP是否有益?

时间:2018-12-24 20:53:05

标签: python pandas oop data-driven

我正在对两种类型的测量实施卡尔曼滤波器。我每秒进行一次GPS测量(1Hz),在一秒钟内进行100次加速度测量(100Hz)。 所以基本上我有两个大桌子,它们必须在某个时刻融合在一起。我的目标是:我真的想编写可读且可维护的代码。

我的第一种方法是:两个数据表都有一个类(因此一个对象就是一个数据表),并且我在类方法中进行了批量计算(因此几乎所有方法都包含for循环),直到我进入实际的过滤器。我发现这种方法太僵硬了。它可以工作,但是有很多数据类型转换,而且不是那么方便。

现在,我想更改代码。如果我想坚持OOP,我的第二个尝试是:每个单独的测量都是GPS_measurment或Acceleration_measurement的对象。这种方法似乎更好,但是通过这种方式可以创建成千上万的对象。

我的第三次尝试是数据驱动的设计,但是我对这种方法并不十分熟悉。

我应该使用哪种范例?还是应该通过上述范式的某种混合来解决?还是我应该只使用程序编程和pandas数据框?

1 个答案:

答案 0 :(得分:0)

听起来您想使用pandas。顺便说一句,OOP是一个概念,而不是您硬性地明确编写的东西。一般来说,如果您打算扩展它们或封装某些功能,则只想定义自己的类。 pandasnumpy是2个模块,它们已经完成了您几乎可以要求的所有数据方面的任务,并且执行速度更快。