如何根據 Pandas 中的特定列值拆分 DataFrame?

DDD
發布: 2024-10-19 22:35:02
原創
168 人瀏覽過

How to Split a DataFrame Based on a Specific Column Value in Pandas?

根據Pandas 中的列值拆分DataFrame

在資料分析中經常會遇到需要將一個DataFrame 分成多個的情況基於特定列值的資料幀。其中一個這樣的情況是,當我們想要將 DataFrame 分成兩部分時:一個包含值低於某個閾值的行,另一個包含值高於或等於該閾值的行。

在 Pandas 中,我們可以完成此任務使用布林索引進行分割。以下是我們如何透過範例實現這種拆分:

考慮以下DataFrame,其中包含名為「Sales」的欄位:

df = pd.DataFrame({'Sales':[10,20,30,40,50], 'A':[3,4,7,6,1]})
print (df)

   A  Sales
0  3     10
1  4     20
2  7     30
3  6     40
4  1     50
登入後複製

假設我們想要根據以下條件將此DataFrame 拆分為兩個:銷售額為30:

直接比較分割:

最簡單的方法是使用布林索引運算子'>=' 進行直接比較:

<code class="python">s = 30

df1 = df[df['Sales'] >= s]
print (df1)

   A  Sales
2  7     30
3  6     40
4  1     50</code>
登入後複製

這將建立一個名為df1 的新DataFrame,其中包含Sales 值大於或等於30 的所有行。

使用反向遮罩拆分:

要建立一個包含Sales 小於30 的行的DataFrame,我們可以使用~:

<code class="python">df2 = df[~mask]
print (df2)

   A  Sales
0  3     10
1  4     20</code>
登入後複製

反轉掩碼,這將建立一個名為df2 的新DataFrame,其中包含Sales 值小於30 的所有行30.

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

來源:php
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!