我有这行代码:
df['new_column']=df['price'][df['bathrooms']>=2 and df['bathrooms']<3]
基本上,我想创建一个包含清单价格的新列(来自列price),但前提是浴室列包含大于或等于2但小于3的值。我得到错误
一个级数的真值是二义的。使用a.empty a.bool (), a.item (), a.any()或所有()。
我如何纠正这个代码?
谢谢!
您需要适当的旁athensis,您不能使用'and'使用amp and (&)代替,而使用loc
代替,尝试:
df['new_column']=df.loc[(df['bathrooms']>=2) & (df['bathrooms']<3), 'price']
您可以在pandas
中使用:querydf1 =df.query('bathrooms>=2 and bathrooms<3')
df1[['price']]