温馨提示:本文翻译自stackoverflow.com,查看原文请点击:python - dataframe.isin using multiple OR operators
dataframe operators pandas python

python - 使用多个OR运算符的dataframe.isin

发布于 2020-03-27 10:40:29

我想看看我的 pandas 数据框的多列中是否有列表中的某些值。

基本上,如果列表中的值存在,我想查看A,B和C列,如果有,则对这些值所在的行进行过滤。为此,我正在使用此:

processes = ['process_A', 'process_B']
df[df.col_A.isin(processes),df.col_B.isin(processes), df.col_C.isin(processes)].any()

并已经尝试过:

df[df.col_A.isin(processes) OR df.col_B.isin(processes) or df.col_C.isin(processes)]

但是我有很多错误或无法预期的结果。

查看更多

查看更多

提问者
Pedro Alves
被浏览
137
Adam.Er8 2019-07-03 21:44

.isin返回一个布尔系列,则需要|在值之间进行逻辑或。

尝试这个:

df[df.col_A.isin(processes) | df.col_B.isin(processes) | df.col_C.isin(processes)]