首頁 > 後端開發 > Python教學 > 如何根據值列表對 Pandas DataFrame 進行子集化?

如何根據值列表對 Pandas DataFrame 進行子集化?

Barbara Streisand
發布: 2024-12-13 09:42:14
原創
557 人瀏覽過

How to Subset a Pandas DataFrame Based on a List of Values?

基於值列表對 Pandas DataFrame 進行子集化

使用相等運算子可以直接根據特定值在 Pandas DataFrame 中選擇行。然而,當處理多個值時,需要更靈活的方法。本文介紹如何使用值列表對資料框進行子集化。

問題:

考慮以下資料框:

df = DataFrame({'A': [5,6,3,4], 'B': [1,2,3,5]})

df

     A   B
0    5   1
1    6   2
2    3   3
3    4   5
登入後複製

我們想要選擇欄位「A」與給定清單中的值相符的行,例如[3, 6]:

list_of_values = [3, 6]

y = df[df['A'] in list_of_values]
登入後複製

解:

dataframe 的 isin方法提供了一種方便的方法來實現此目的:

df[df['A'].isin([3, 6])]
登入後複製

這個返回以下行:

     A    B
1    6    2
2    3    3
登入後複製

對於逆向選擇,排除具有值的行在給定列表中,使用 ~運算符:

df[~df['A'].isin([3, 6])]
登入後複製

這將傳回剩餘的行:

   A  B
0  5  1
3  4  5
登入後複製

使用isin 方法,您可以輕鬆地根據清單選擇或排除行值,為從Pandas 資料幀中提取資料提供更通用的解決方案。

以上是如何根據值列表對 Pandas DataFrame 進行子集化?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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