使用Pandas双时态DataFrame保存内存

时间:2018-01-23 03:37:13

标签: python pandas dataframe memory-management

我经常需要构建一个双时态Pandas DataFrame,其中[CURR_DATE, HIST_DATE]为MultiIndex,以及十几列数字,分类和文本数据。每个CURR_DATE的注意事项,HIST_DATE将循环显示,例如3年,行的其余部分很大程度上取决于HIST_DATE描述HIST_DATE的信息,非常不经常的更改(由于HIST_DATE的信息在某些CURR_DATE上得到更新)。

如您所见,此DataFrame有大量重复信息。但它会一次又一次地被复制,使整个DataFrame内存效率低下。 (相比之下,dict对象将允许引用,因此指向相同的底层对象是高效的。)

问题:构建DataFrame的更好方法仍然是允许双时间处理能力(例如DATA_DATE需要与其他一些DataFrame连接,并且HIST_DATE需要加入使用第三个DataFrame),同时使整个DataFrame的内存效率更高/内存占用更小?

(请随时让我澄清问题是否不清楚。)

0 个答案:

没有答案