为了账号安全,请及时绑定邮箱和手机立即绑定

TypeError: 'NoneType' 不可迭代

TypeError: 'NoneType' 不可迭代

RISEBY 2021-12-08 16:12:00
我想创建一个没有目标的浮动特征数据框,以便我可以进一步操作它们。我试过了:float_col = data.select_dtypes('float').drop(['TARGET'], axis=1, inplace=True)# Remove sparse numerical featuresfor f in float_col:   if data[f].isnull().sum() / data.shape[0] > 0.1667: del data[f] #Remove above 1/6 of NANs...返回:TypeError: 'NoneType' 对象不可迭代我也试过这样做:float_col = data.select_dtypes('float').drop(['TARGET'], axis=1, inplace=True).update()...返回:AttributeError: 'NoneType' 对象没有属性 'update'我相信这个问题是由目标下降引起的。
查看完整描述

1 回答

?
慕娘9325324

TA贡献1783条经验 获得超4个赞

当你调用应用更改方法到位None则返回。你用过.drop(..., inplace=True)

data.select_dtypes('float').drop(['TARGET'], axis=1, inplace=True)

所以data.select_dtypes(...)直接改变了的结果并None赋值给了float_col。您不能在 上使用迭代(如for循环)None

DataFrame.drop()方法文档

就地布尔,默认为假

如果True,就地进行操作并返回None

如果您想获取float除 之外的所有列TARGET,则只需删除inplace=True

float_col = data.select_dtypes('float').drop(['TARGET'], axis=1)


查看完整回答
反对 回复 2021-12-08
  • 1 回答
  • 0 关注
  • 267 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信