熊猫数据帧如何存储在内存中?

时间:2019-06-26 17:18:12

标签: python pandas

特别是,当我通过串联两个Pandas Series对象创建DataFrame时,Python会创建一个新的内存位置并存储该系列的副本吗?还是只是创建对这两个系列的引用?

如果只是引用,那么修改series.name = "new_name"之类的系列会影响DataFrame的列名吗?

还要从series = df['column_name']这样的DataFrame中获取序列花费O(1)时间还是O(n)时间?

1 个答案:

答案 0 :(得分:1)

一个快速测试表明,成本是连带的,而不是取消引用的。因此,BLUF,df ['s1']为O(1),而concat为O(n)。

从每个系列中的单个项目到每个系列中的4000万个项目,取消引用花费的时间相似,而持续时间似乎线性增加。

使用以下简单代码: def func(frange):

&

结果是:

enter image description here