首页 > 解决方案 > 两列 pandas DataFrame 上的条件不等式语句

问题描述

对于 pandas DataFrame 的两列上的两个条件相等语句df,我们通常会使用

df.loc[(df['col1'] == 0.9 & (df['col2'] == 1)]

如何对条件不等式语句做同样的事情?

df.loc[(df['col1'] > 0.9) & (df['col2'] > 1)]

由于浮动,上面给出了我认为的错误0.9

TypeError: '>' not supported between instances of 'method' and 'float'

更具体地说,当df.col1用于代替df['col1']等时会出现错误

标签: pythonpandasdataframeconditional-statementsinequality

解决方案


我相信您只需要添加外括号即可。

而不是这个:

df.loc[(df['col1'] > 0.9) & (df['col2'] > 1)]

尝试这个:

df.loc[((df['col1'] > 0.9) & (df['col2'] > 1))]

推荐阅读