首頁 > 後端開發 > Python教學 > 如何使用 Groupby 根據列值將 Pandas DataFrame 拆分為多個 DataFrame?

如何使用 Groupby 根據列值將 Pandas DataFrame 拆分為多個 DataFrame?

Patricia Arquette
發布: 2024-12-27 15:34:10
原創
994 人瀏覽過

How to Split a Pandas DataFrame into Multiple DataFrames Based on Column Values Using Groupby?

使用Groupby 根據列值拆分Pandas 資料框

在Python 中,可以依照列值將Pandas 資料框拆分為多個資料框特定列中的值。此技術通常用於為列中的每個唯一類別或群組建立單獨的資料框。

例如,考慮以下帶有名為「ZZ」的欄位的資料框:

df = 
        N0_YLDF  ZZ        MAT
    0  6.286333   2  11.669069
    1  6.317000   6  11.669069
    2  6.324889   6  11.516454
    3  6.320667   5  11.516454
    4  6.325556   5  11.516454
    5  6.359000   6  11.516454
    6  6.359000   6  11.516454
    7  6.361111   7  11.516454
    8  6.360778   7  11.516454
    9  6.361111   6  11.516454
登入後複製

目標是將此資料幀拆分為四個新資料幀,每個資料幀包含「ZZ」具有特定值的行:2、5、6 和7。為了實現這一目標,我們可以利用 Pandas 的「groupby」函數。

gb = df.groupby('ZZ')    
[gb.get_group(x) for x in gb.groups]
登入後複製

「groupby」函數建立一個 GroupBy 對象,該物件根據指定列中的值(本例中為「ZZ」)對資料幀行進行分組。 “ZZ”的每個唯一值都成為 GroupBy 物件中的一個群組。

後續行使用列表理解來迭代群組並將每個群組作為單獨的資料幀檢索。使用每個群組的名稱(即“ZZ”的唯一值)呼叫“get_group”方法來提取對應的資料幀。

因此,此程式碼產生四個新的資料幀,每個資料幀代表在「ZZ」列中共享相同值的原始資料幀行。

以上是如何使用 Groupby 根據列值將 Pandas DataFrame 拆分為多個 DataFrame?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板