如何根據列值選擇 Pandas DataFrame 中的特定行?
在 Pandas 中根據列值選擇行
在 Pandas 中,過濾 DataFrame 以根據列值選擇特定行可以使用比較運算符和布林索引。
比較列值
選擇行如果列值與特定標量值匹配,請使用== 運算子:
df.loc[df['column_name'] == some_value]
要選擇列值位於列表或其他可迭代值中的行,請使用isin 運算子:
df.loc[df['column_name'].isin(some_values)]
組合條件
可以使用&運算子組合多個條件來選擇滿足所有條件的行條件:
df.loc[(df['column_name'] >= A) & (df['column_name'] <= B)]
請注意,括號是確保正確的運算子括號優先順序所必需的。
否定條件
選擇與特定值不符或不在其中的行特定列表,使用!= 或~:
df.loc[df['column_name'] != some_value] df = df.loc[~df['column_name'].isin(some_values)] # In-place replacement requires `loc`
索引來否定條件優化
為了對常用條件進行有效過濾,在列上建立索引可能會很有幫助。這允許使用df.loc 進行更快的查找:
df = df.set_index(['B']) df.loc['one']
範例
考慮以下DataFrame:
df = pd.DataFrame({'A': ['foo', 'bar', 'foo', 'bar', 'foo', 'bar', 'foo', 'foo'], 'B': ['one', 'one', 'two', 'three', 'two', 'two', 'one', 'three'], 'C': np.arange(8), 'D': np.arange(8) * 2})
選擇列'A' 等於' 的行foo':
print(df.loc[df['A'] == 'foo'])
選擇列「B」所在的行['一', '三']:
print(df.loc[df['B'].isin(['one','three'])])
要選擇「B」列為「一」或「二」的行:
df = df.set_index(['B']) print(df.loc[df.index.isin(['one','two'])])
以上是如何根據列值選擇 Pandas DataFrame 中的特定行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

使用FiddlerEverywhere進行中間人讀取時如何避免被檢測到當你使用FiddlerEverywhere...

如何在10小時內教計算機小白編程基礎?如果你只有10個小時來教計算機小白一些編程知識,你會選擇教些什麼�...

攻克Investing.com的反爬蟲策略許多人嘗試爬取Investing.com(https://cn.investing.com/news/latest-news)的新聞數據時,常常�...

Python3.6環境下加載pickle文件報錯:ModuleNotFoundError:Nomodulenamed...

使用Scapy爬蟲時管道文件無法寫入的原因探討在學習和使用Scapy爬蟲進行數據持久化存儲時,可能會遇到管道文�...
