在此场景中,您有一个包含订单数据的 DataFrame,其中每个订单都有多个存储为逗号分隔的包package 和 package_code 列中的字符串。目标是拆分这些包裹,并为每个包裹创建一个新行,其中包含相应的订单详细信息。
假设所有可拆分列具有相同数量的逗号分隔项目,您可以使用以下步骤来实现所需的输出:
<code class="python">import pandas as pd # Create the sample DataFrame df = pd.DataFrame({"order_id": [1, 3, 7], "order_date": ["20/5/2018", "22/5/2018", "23/5/2018"], "package": ["p1,p2,p3", "p4", "p5,p6"], "package_code": ["#111,#222,#333", "#444", "#555,#666"]}) # Use pandas functions to split and explode the columns result_df = (df.set_index(['order_id', 'order_date']) .apply(lambda x: x.str.split(',').explode()) .reset_index()) # Display the output DataFrame print(result_df)</code>
这段代码首先将不被触及的列设置为索引。然后,它迭代每一列,用逗号分隔值,并将它们分解为自己的行。最后,重置索引以获得所需的格式。
输出 DataFrame 将为每个包提供单独的行,包括其订单详细信息。
以上是如何将 Pandas DataFrame 中的逗号分隔值分成多行?的详细内容。更多信息请关注PHP中文网其他相关文章!