2012-03-24 32 views
1

我对配置或修补熊猫很感兴趣,因此它的内存开销尽可能低。在一个实验中,我创建了2个numpy数组,每个数组包含5000万个uint32值。以numpy格式存储这些数组需要200 + 200 = 400 Mbytes。如果我将其中一个数组包装到Series对象中(index = None),那么它会消耗大约600 MB的内存。如果我将这两个数组包装到一个DataFrame对象中(index = None),那么内存需求是〜1600 Mbytes。Series和DataFrame对象中存储了哪些额外的数据?

对于Series存储器,额外的内存需求似乎是#rows * 8个字节,对于DataFrame存储器,需要#rows *(#columns + 1)* 8个字节。你能解释一下哪些额外的数据与原始的numpy数组一起存储在Series和DataFrame对象中?

回答

相关问题