【发布时间】:2016-08-18 10:55:08
【问题描述】:
如何在涉及熊猫数据框两列的控制语句中添加逻辑AND,即
这行得通:
def getContinent(row):
if row['Location'] in ['US','Canada']:
val = 'North America'
elif row['Location'] in['UK', 'Germany']:
val = 'Europe'
else:
val = None
return val
df.apply(getContinent, axis=1)
现在我想在另一个字段 row['Sales'] 中包含一个附加条件:
def getContinent(row):
if row['Location'] in ['US','Canada'] & row['Sales'] >= 100:
val = 'North America'
elif row['Location'] in['UK', 'Germany'] & row['Sales'] < 100:
val = 'Europe'
else:
val = None
return val
df.apply(getContinent, axis=1)
ValueError: ('Arrays were different lengths: 6132 vs 2', u'occurred at index 0')
【问题讨论】:
-
写
and而不是&
标签: python pandas if-statement dataframe apply