问题:
尝试通过函数导致内存错误,表明数据帧大小过大。目标是:
解决方案:
按行数切片
可以使用 list 来完成按固定行数的分割来自 numpy 的理解或 array_split:
<code class="python">n = 200000 # Chunk row size list_df = [df[i:i + n] for i in range(0, df.shape[0], n)]</code>
<code class="python">list_df = np.array_split(df, math.ceil(len(df) / n))</code>
按 AcctName 切片
按特定列值进行切片,例如 AcctName:
<code class="python">list_df = [] for n, g in df.groupby('AcctName'): list_df.append(g)</code>
合并
大数据帧被切片后,可以使用 pd.concat 重新组装:
<code class="python">consolidated_df = pd.concat(list_df)</code>
以上是以下是一些标题选项,每个标题选项都强调解决方案的不同方面: 聚焦问题: * 如何在没有内存错误的情况下处理大型 Pandas DataFrame? * Pandas 中的内存错误:的详细内容。更多信息请关注PHP中文网其他相关文章!