[英]dataframe.isin using multiple OR operators
我想看看我的熊猫数据框的多列中是否有列表中的某些值。
基本上,如果列表中的值存在,我想查看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)]
但是我有很多错误或无法预期的结果。
.isin
返回一个布尔系列,您需要使用|
值之间的逻辑或。
尝试这个:
df[df.col_A.isin(processes) | df.col_B.isin(processes) | df.col_C.isin(processes)]
使用any
如下
df[df[['col_A','col_B','col_C']].isin(processes).any(1)]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.