首頁 >後端開發 >Python教學 >如何使用 Groupby 連接多個 Pandas DataFrame 行中的字串?

如何使用 Groupby 連接多個 Pandas DataFrame 行中的字串?

Linda Hamilton
Linda Hamilton原創
2024-12-22 02:09:14364瀏覽

How Can I Concatenate Strings from Multiple Pandas DataFrame Rows Using Groupby?

使用Pandas Groupby 連接多行字串

在使用Pandas 進行資料操作的領域中,通常需要組合來自多個行的字串基於特定標準的行。 Groupby 操作提供了實現此目的的強大方法。讓我們深入研究一個實際範例。

假設我們有一個包含「名稱」、「文字」和「日期」欄位的 DataFrame。我們希望將「名稱」和「月份」的每個唯一組合的「文字」條目連接起來。為此,我們可以利用以下步驟:

  1. 分組和轉換: 按「名稱」和「月份」列將 DataFrame 分組。然後,套用轉換操作並使用lambda 函數以逗號分隔符號連接「文字」條目:

    df['text'] = df[['name','text','month']].groupby(['name','month'])['text'].transform(lambda x: ','.join(x))
  2. 刪除重複項: 轉換後的' text'列可能包含重複的條目。要保留唯一的條目,請根據「名稱」和「月份」列刪除重複項:

    df[['name','text','month']].drop_duplicates()

或者,我們可以透過使用apply 和reset_index 來簡化過程以獲得所所需的結果輸出:

df.groupby(['name','month'])['text'].apply(','.join).reset_index()

這些方法可以有效連接Pandas DataFrame中多行的字串,從而使資料操作任務更加容易可以管理。

以上是如何使用 Groupby 連接多個 Pandas DataFrame 行中的字串?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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