sklearn :ImportError: cannot import name ‘Imputer‘

在学习中国大学mooc中学习Python机器学习应用(礼欣、嵩天)里人体运动...程序编写遇到的问题

# 模块导入
import numpy as np
import pandas as pd

from sklearn.preprocessing import Imputer
from sklearn.model_selection import train_test_split
from sklearn.metrics import classification_report

问题1:导入Imputer出错

ImportError                               Traceback (most recent call last)
<ipython-input-55-67f8b87066ad> in <module>()
      3 import pandas as pd
      4 
----> 5 from sklearn.preprocessing import Imputer
      6 from sklearn.model_selection import train_test_split
      7 from sklearn.metrics import classification_report

ImportError: cannot import name 'Imputer'

原因是0.22版本sklearn,imputer不在preprocessing里了,而是在sklearn.impute里,除了SimpleImputer外,还增加了KNNImputer。另外还有IterativeImputer用法,可以参考这个 https://scikit-learn.org/stable/modules/impute.html#impute 以及 https://scikit-learn.org/stable/modules/preprocessing.html#preprocessing 

问题2:

ValueError: Input contains NaN, infinity or a value too large for dtype('float64').
Imputer.(missing_values='NaN', strategy='mean')

需要改为

impute.SimpleImputer(missing_values=np.nan, strategy='mean')

 

课程其他问题:

SystemError: new style getargs format but argument is not a tuple[与putpixel(xy, value)相关]
https://blog.csdn.net/weixin_43584807/article/details/104209292

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值