我对配置或修补熊猫感兴趣,以使其内存开销尽可能低。在一个实验中,我创建了 2 个 numpy 数组,每个数组包含 5000 万个 uint32 值。以 numpy 格式存储这些数组需要 200 + 200 = 400 MB。如果我将其中一个数组包装成一个 Series 对象(index=None),那么它会消耗大约 600 MB 的内存。如果我将这两个数组包装成一个 DataFrame 对象(index=None),那么内存需求约为 1600 MB。
似乎额外的内存要求是#rows * 8 字节用于系列存储,#rows * (#columns + 1) * 8 字节用于 DataFrame 存储。你能解释一下Series和DataFrame对象中究竟存储了哪些额外数据以及原始numpy
数组吗?