我目前有一个数据框,其中包含房屋的海拔信息。我想根据条件将其分为不同的数据框。我有以下内容:
minor = data[data.NAVD88 <= 5]
moderate = data[data.NAVD88 > 5] and data[data.NAVD88 < 7]
major = data[data.NAVD88 >= 7]
但是,中等线似乎不起作用,并且出现以下错误:
The truth value of a DataFrame is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().
正确执行该操作的正确语法是什么?
答案 0 :(得分:0)
对and
使用逐行&
,并且因为优先级优先级为链布尔布尔掩码添加了()
:
minor = data[data.NAVD88 <= 5]
moderate = data[(data.NAVD88 > 5) & (data.NAVD88 < 7)]
major = data[data.NAVD88 >= 7]