Pandas 提供了全面的数据操作工具,包括拆分包含多个逗号分隔值的单元格的功能分成多行。在本指南中,我们将根据 pandas 的版本探索使用两种不同方法来实现此目的。
对于 pandas 0.25 及更高版本,您可以使用组合apply、str.split 和 Series.explode 来实现所需的结果。代码片段如下:
<code class="python">(df.set_index(['order_id', 'order_date']) .apply(lambda x: x.str.split(',').explode()) .reset_index()) </code>
说明:
对于 pandas 0.24 及以下版本,需要更复杂的方法,涉及 stack、unstack 和 str.split:
<code class="python">(df.set_index(['order_date', 'order_id']) .stack() .str.split(',', expand=True) .stack() .unstack(-2) .reset_index(-1, drop=True) .reset_index() )</code>
说明:
两种方法都会返回一个新的 DataFrame,其中分解的值作为单独的行,如下所示您提供的所需输出。
以上是如何在 Pandas DataFrame 中将逗号分隔的单元格拆分为多行?的详细内容。更多信息请关注PHP中文网其他相关文章!