处理时pandas DataFrames,有时需要将包含列表的列“取消嵌套”或“分解”为多行。然而,这可能是一个计算成本很高的操作,尤其是对于大型数据集。
对于 pandas 1.3 及更高版本,有一个内置函数称为DataFrame.explode 允许您同时取消嵌套多个列。此函数要求所有列表列具有相同的长度。使用方法:
df.explode(['B', 'C', 'D', 'E']).reset_index(drop=True)
df.set_index(['A']).apply(pd.Series.explode).reset_index()
Method | Time (seconds) |
---|---|
DataFrame.explode | 0.00259 |
Set index and explode | 0.00127 |
Stacking approach | 0.120 |
以上是如何有效地解除 Pandas DataFrame 中多个列表列的嵌套?的详细内容。更多信息请关注PHP中文网其他相关文章!