首頁 >後端開發 >Python教學 >如何將 Pandas DataFrame 中的逗號分隔值分成多行?

如何將 Pandas DataFrame 中的逗號分隔值分成多行?

Patricia Arquette
Patricia Arquette原創
2024-10-27 19:32:02597瀏覽

How to Separate Comma-Separated Values into Multiple Rows in a Pandas DataFrame?

將Pandas DataFrame 中的單元格拆分為多行

在此場景中,您有一個包含訂單資料的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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn