估计熊猫数据框大小,而无需加载到内存中

时间:2019-11-15 21:00:08

标签: python pandas dataframe dask

是否有一种方法可以估计数据帧的大小而无需将其加载到内存中?我已经知道我没有足够的内存来存储要创建的数据帧,但是我不知道完全创建它需要多少内存。

2 个答案:

答案 0 :(得分:0)

我相信您正在寻找df.memory_usage,它将告诉您每列将占用多少。

总会是这样的:

df.memory_usage().sum()

输出:

123123000

您可以做一些更具体的事情,例如包括Index(Index = True)或使用“深度检查”数据的Deep功能。随时检查文档!

https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.memory_usage.html

答案 1 :(得分:0)

您可以计算一行,并据此进行估算:

data = {'name': ['Bill'], 
        'year': [2012], 
        'num_sales': [4]}
df = pd.DataFrame(data, index = ['sales'])
df.memory_usage(index=True).sum() #-> 32