我正在为';获取不支持的操作数类型;str';和';布尔';在下面的python3代码中,我无法理解为什么?

我正在为';获取不支持的操作数类型;str';和';布尔';在下面的python3代码中,我无法理解为什么?,python,pandas,numpy,Python,Pandas,Numpy,|:'str'和'bool'的操作数类型不受支持 我已经附上了下面的截图 train = train.drop(((train[train['pickup_latitude']<-90])|(train[train['pickup_latitude']>90])).index, axis=0) train=train.drop(((train[train['picku lation']90]))索引,轴=0) 你在使用括号时有一个错误。修正: train=train.drop((

|:'str'和'bool'的操作数类型不受支持 我已经附上了下面的截图

train = train.drop(((train[train['pickup_latitude']<-90])|(train[train['pickup_latitude']>90])).index, axis=0)
train=train.drop(((train[train['picku lation']90]))索引,轴=0)

你在使用括号时有一个错误。修正:

train=train.drop((train[(train[(train['picku纬度]]90)])。索引,轴=0)
请注意,格式是
train[complex condition]
,而不是
train[condition1]| train[condition2]
,因为“train[]”返回的类型不能简单地使用“|”

消除不需要的值的更简单方法:

train=train.loc[(abs(列车['picking_lation']))试试:

将numpy导入为np
掩码=np.逻辑或(列['Picking\u latitude'].lt(-90),列['Picking\u latitude'].gt(90))
#或者更好:
面罩=列车['Picking_latitude'].abs().gt(90)
train.drop(mask.loc[mask].index,in place=True)