Pandas 基于数据帧中的特定值筛选所有行

Pandas 基于数据帧中的特定值筛选所有行,pandas,dataframe,Pandas,Dataframe,我有一个数据帧,当一个条件满足时有“是”,当它不满足时有“否”。现在,我想检索其中包含“No”的所有行 我尝试使用以下代码: df2 = df[df['Logs'].astype(str).str.contains('No')] df3 = df[df['Jobs'].astype(str).str.contains('No')] df4 = df[df['Performance'].astype(str).str.contains('No')] df5 = df2 | df3 |

我有一个数据帧,当一个条件满足时有“是”,当它不满足时有“否”。现在,我想检索其中包含“No”的所有行

我尝试使用以下代码:

 df2 = df[df['Logs'].astype(str).str.contains('No')] 
 df3 = df[df['Jobs'].astype(str).str.contains('No')] 
 df4 = df[df['Performance'].astype(str).str.contains('No')] 
 df5 = df2 | df3 | df4
我得到错误“不支持的操作数类型”

例如:

 MachineName    Logs   Jobs   Performance
 121            Yes    No      Yes
 122            Yes    Yes     Yes
 123            Yes    No      No
 125            Yes    Yes     Yes
 126            No     No      No
输出:

 MachineName    Logs   Jobs   Performance
 121            Yes    No      Yes
 123            Yes    No      No
 126            No     No      No

对所有要成为
否'
的列执行相等性检查,然后使用以获取布尔数组

condition = (df[['Logs', 'Jobs', 'Performance']] == 'No').any(axis=1)
df2 = df[condition]
结果输出如预期:

   MachineName Logs Jobs Performance
0          121  Yes   No         Yes
2          123  Yes   No          No
4          126   No   No          No