0

我在熊猫中有数据框城市。我需要在其中添加一个布尔列,如果
1 为真。这座城市是以圣人的名字命名的。
2.城市面积大于50平方英里。

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

城市['cond1'] = 城市['城市名称'].str.contains('San') & 城市['面积平方英里'] > 50
个城市['cond2'] = 城市['面积平方英里'] > 50 & city['City name'].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 操作。请帮助我理解这个结果以及如何正确检查上述条件。

4

1 回答 1

0

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

于 2018-03-16T04:32:00.000 回答