首頁 >後端開發 >Python教學 >如何根據多個複雜標準從 pandas DataFrame 中選擇資料?

如何根據多個複雜標準從 pandas DataFrame 中選擇資料?

Barbara Streisand
Barbara Streisand原創
2024-12-24 00:50:18144瀏覽

How to Select Data from a pandas DataFrame Based on Multiple Complex Criteria?

從pandas.DataFrame 中選擇複雜條件

考慮以下DataFrame:

import pandas as pd
from random import randint

df = pd.DataFrame({'A': [randint(1, 9) for x in range(10)],
                   'B': [randint(1, 9)*10 for x in range(10)],
                   'C': [randint(1, 9)*100 for x in range(10)]})

從以下位置選擇值“A”,“B”的對應值大於50,而“C”則不大於50等於900,我們可以利用 Pandas 的方法和習慣用法。

我們先應用列運算來取得布林 Series 物件:

df["B"] > 50
(df["B"] > 50) & (df["C"] != 900)

這些 Series 代表我們感興趣的條件。然後,我們可以使用以下條件對DataFrame 進行索引來過濾資料:

df["A"][(df["B"] > 50) & (df["C"] != 900)]

或者,我們可以使用.loc 來實現相同的結果:

df.loc[(df["B"] > 50) & (df["C"] != 900), "A"]

此方法提供更多控制並允許更可自訂的索引體驗。

產生的 DataFrame 將只包含 'A' 的值符合指定條件。

以上是如何根據多個複雜標準從 pandas DataFrame 中選擇資料?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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