首頁 >後端開發 >Python教學 >如何在 Python 中按列對 Excel 資料進行分組並建立清單字典?

如何在 Python 中按列對 Excel 資料進行分組並建立清單字典?

Susan Sarandon
Susan Sarandon原創
2024-10-30 03:17:02578瀏覽

How to Group Excel Data by Column and Create a Dictionary of Lists in Python?

按Excel 結果分組到列表字典

您有一個Excel 電子表格,其中的資料組織為三列:Column1、Column2 和Column3。您想要提取此資料並將其按 Column1 分組,以便 Column1 中的每個唯一值對應於 Column3 中的值清單。

程式碼:

您已經嘗試在 Column1 上使用 groupby() 函數,但輸出包含索引而不是 Column3 中的實際值。若要修正此問題,您需要指定要分組的欄位以及要擷取的欄位:

<code class="python">df = pandas.read_excel(r"e:\test_data.xlsx", sheetname='mySheet', parse_cols=['Column1', 'Column3'])
result = df.groupby('Column1')['Column3'].apply(list).to_dict()</code>

說明:

  • groupby () 按Column1 中的值會將資料分組。
  • apply(list) 將列表函數應用於每個子組,將 Column3 中的值轉換為列表。
  • to_dict() 將分組的值轉換為列表將資料放入字典中,其中鍵是 Column1 中的值,值是 Column3 中的值列表。

替代代碼:

另一種方式要達到相同的結果,請用字典理解:

<code class="python">result = {k: list(v) for k, v in df.groupby('Column1')['Column3']}</code>

輸出:

兩個程式碼片段都會產生所需的輸出:

{0: [1], 1: [2, 3, 5], 2: [1, 2], 3: [4, 5], 4: [1], 5: [1, 2, 3]}

以上是如何在 Python 中按列對 Excel 資料進行分組並建立清單字典?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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