將Pandas DataFrame 中的單元格拆分為多行
處理pandas DataFrame 中的逗號分隔值時,可以將它們轉換為自己的行有必要進行進一步分析。以下是如何實現這一點:
對於Pandas >= 0.25:
此方法簡化了過程:
<code class="python">(df.set_index(['order_id', 'order_date']) .apply(lambda x: x.str.split(',').explode()) .reset_index()) order_id order_date package package_code 0 1 20/5/2018 p1 #111 1 1 20/5/2018 p2 #222 2 1 20/5/2018 p3 #333 3 3 22/5/2018 p4 #444 4 7 23/5/2018 p5 #555 5 7 23/5/2018 p6 #666</code>
對於Pandas
對於早期的Pandas 版本,需要採用不同的方法:
<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() ) order_date order_id package package_code 0 20/5/2018 1 p1 #111 1 20/5/2018 1 p2 #222 2 20/5/2018 1 p3 #333 3 22/5/2018 3 p4 #444 4 23/5/2018 7 p5 #555 5 23/5/2018 7 p6 #666</code>
詳細信息:
兩者方法涉及以下幾個步驟:
以上是如何將 Pandas DataFrame 中的逗號分隔值拆分為多行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!