在使用500GB内存的同时取消对3.5 GB CSV的熊猫pd.melt抛出内存错误。是否有任何解决方案/功能可用于取消枢纽性CSV文件?当前的csv具有超过5000列。
答案 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)
非常简单,但这确实使融化更快了。