pylint,pandas:与True的比较应该只是“ expr”或“ expr是True”(单项比较)

时间:2018-08-02 15:51:23

标签: pandas dataframe pylint

有人在使用大熊猫时解决了pylint问题吗?

C:525,59: Comparison to True should be just 'expr' or 'expr is True' (singleton-comparison)

这发生在我使用的行中:

df_current_dayparts_raw['is_standard'] == True

我尝试了这些但没有用:

df_current_dayparts_raw['is_standard'] is True
df_current_dayparts_raw['is_standard'].isin([True])
df_current_dayparts_raw['is_standard'].__eq__(True)

3 个答案:

答案 0 :(得分:0)

尝试使用<your_expr> == True代替numpy.equal(<your_expr>, True)。具体来说:

imponrt numpy as np
np.equal(<your_expr>, True)

答案 1 :(得分:0)

    1. 当我在 Mac 中使用 jupyter notebook 时。我没有收到此错误:
    1. 获取python版本
import sys 
print(sys.version)

    1. 获取玩具数据集
import pandas as pd 
data = pd.DataFrame({"A":['a', 'b', 'c', 'd'],"b": [1, 2, 3, 4]})
data

enter image description here

答案 2 :(得分:0)

如果您使用以下代码实例化了一个数据框

test = pd.DataFrame({"bool": [True, False, True], "val":[1,2,3]})
>>> test
    bool  val
0   True    1
1  False    2
2   True    3

以下应该只返回“bool”为真的字段

test[test['bool']]

   bool  val
0  True    1
2  True    3

您不需要明确声明 test['bool'] == True,test['bool'] 就足够了。这应该符合 pylint 并满足单例比较。