在进行数据清洗时候,想删除值为0的列时,需要用pandas过滤数据集,去除异常值
主要利用pandas中的isin
方法
train[(True-train[id].isin([1]))]//去除列名称为id,并且id值为1的一行
在运行完代码后,出现如下报错
.numpy boolean subtract, the
-operator, is deprecated, use the bitwise_xor, the
^operator, or the logical_xor function instead
意思大概是numpy中 -
符号被弃用,用逻辑异或符号 ^
代替
所有代码修改如下
train[(True^train[id].isin([1]))]//去除列名称为id,并且id值为1的一行
如果想多个变量值为标准
train[(True^train[id].isin([1,2]))]//去除列名称为id,并且id值为1的一行
如果想去除若干列
train[(True^train[id].isin([1,2])&True^train['age'].isin([22]))]
过滤某个范围的值
train[(True^train[id]<=5)]