我正在嘗試根據兩行值過濾掉行。我看到的大多數問題的解決方案都使用以下方法:df.loc[(df['A'] != 'yes') & (df['B'] != 'no')]這會過濾 A 和 B 與一個值不同的行,我想要做的是過濾列具有我正在過濾的值的行,例如:Player | action | result1 A B2 B A3 C A4 A B5 A C在此示例中,我想刪除具有 actionA和 result的行B。使用上面的示例,它將刪除等于 的操作A以及結果等于 的行B。我想刪除A有結果的操作B。預期輸出: Player | action | result 2 B A 3 C A 5 A C可能我在這里造成了很多困惑,這很簡單。無論如何,任何幫助將不勝感激!
2 回答

慕斯709654
TA貢獻1840條經驗 獲得超5個贊
您可以嘗試以下嗎?
import pandas as pd
df2[~((df2["action"]=='A') & (df2["result"]=='B'))]
數據幀的輸出如下。
Player action result
1 2 B A
2 3 C A
4 5 A C

慕田峪7331174
TA貢獻1828條經驗 獲得超13個贊
我想這就是你想要的
pd.concat([df[(df['action'] == 'A') & (df['result'] != 'B')],df[(df['action'] != 'A')]])
添加回答
舉報
0/150
提交
取消