在使用500GB内存时取消对3.5 GB CSV的熊猫Pd.melt抛出内存错误

时间:2019-04-26 04:41:33

标签: python-3.x pandas csv read.csv

在使用500GB内存的同时取消对3.5 GB CSV的熊猫pd.melt抛出内存错误。是否有任何解决方案/功能可用于取消枢纽性CSV文件?当前的csv具有超过5000列。

1 个答案:

答案 0 :(得分:1)

我在同一个问题上挣扎,偶然发现了您的主题。这是我@ run-out建议的实现(按块迭代并串联):

pivot_list = list()
chunk_size = 100000

for i in range(0,len(df_final),chunk_size):
    row_pivot =df.iloc[i:i+chunksize].melt(id_vars=new_vars,value_vars=new_values)
    pivot_list.append(row_pivot)

df = pd.concat(pivot_list)

非常简单,但这确实使融化更快了。