![](/img/trans.png)
[英]How to assign value to particular column in pandas dataframe based on different conditions?
[英]How to exclude rows based on multi column value conditions in pandas dataframe?
下面是熊猫数据框广告:
email score
a@domain.com A
b@domain.com A
c@domain.com C
d@domain.com B
我想排除带有email
a@domain.com
和c@domain.com
行。预期结果如下:
email score
b@domain.com A
d@domain.com B
我尝试了 3 次但失败了:
df=df[df.email !='a@domain.com' & df.email !='c@domain.com' ]
TypeError: cannot compare a dtyped [object] array with a scalar of type [bool]
df=df[df.email !='a@domain.com' && df.email !='c@domain.com' ]
SyntaxError: invalid syntax
df=df[df.email !='a@domain.com' | 'c@domain.com' ]
TypeError: unsupported operand type(s) for |: 'str' and 'str'
有什么问题?
你必须用括号括起来:
df = df[(df.email != 'a@domain.com') & (df.email != 'c@domain.com')]
也就是说,使用isin
会更容易:
df = df[~df.email.isin(['a@domain.com', 'c@domain.com'])]
现在:
print(df)
将是预期的输出。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.