【发布时间】:2020-12-27 09:57:33
【问题描述】:
我试图在我的数据框列中分解一个列表并将其合并回 df,但是在将展平列与初始数据框合并时出现内存错误。我想知道我是否可以将它合并成块,这样我就可以克服内存问题。
def flatten_colum_with_list(df, column, reset_index=False):
column_to_flatten = pd.DataFrame([[i, x] for i, y in df[column].apply(list).iteritems() for x in y], columns=['I', column])
column_to_flatten = column_to_flatten.set_index('I')
df = df.drop(column, axis=1)
df = df.merge(column_to_flatten, left_index=True, right_index=True)
if reset_index:
df = df.reset_index(drop=True)
return df
我将不胜感激。
【问题讨论】:
-
你能展示你的数据帧的一个小样本和预期的输出吗?也许您可以帮助我们想象应该如何执行合并。仅凭代码很难分辨。
标签: python pandas dataframe data-science