评估大熊猫中的逻辑AND

时间:2018-03-16 04:27:47

标签: python pandas logical-and

我在pandas中有数据框城市。我需要在其中添加一个布尔列,如果是,则为true   这座城市以圣人的名字命名   这个城市面积超过50平方英里。

我在下面写了评估它的条件。

城市[' cond1'] =城市['城市名称']。str.contains(' San')&城市['面积平方英里']> 50个
城市[' cond2'] =城市['面积平方英里']> 50&城市['城市名称']。str.contains(' San')
城市
我得到以下结果:

City    name        Population    Area square miles  cond1        cond2  
 0   San Francisco  852469        46.87              False        True
 1   San Jose       1015785       176.53             False        True
 2   Sacramento     485199        97.92              False        True  

cond1和cond2列都检查相同的条件,但给出相反的结果,这似乎也不正确,因为我正在尝试进行AND操作。 请帮助我理解这个结果,如何正确检查上述条件。

1 个答案:

答案 0 :(得分:0)

由于>优先级低于&A > X & B被解析为A > (X & B),但您想要的是(A > X) & B