在學習中國大學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