由于一些模块的变迁,导致复现《python数据科学手册》代码(尤其第5章-机器学习)时,经常报错。
以下是我个人的一些校证。
如果诸位在学习《python数据科学手册》的过程中,遇到什么疑难,欢迎留言。
- scikit-learn.cross_validation 模块变迁
自scikit-learn 0.20
版起,已经用model_selection
模块代替cross_validation
模块。因此,复现代码时,from sklearn.cross_validation import xxx
时,会报出ModuleNotFoundError: No module named 'sklearn.cross_validation'
的错误。
P307:
In[15]:from sklearn.cross_validation import train_test_split # Error
In[15]:from sklearn.model_selection import train_test_split # Amend
P308
In[20]:
from sklearn.mixture import GMM # Error
from sklearn.mixture import GaussianMixture # Amend
P315
In[5]: from sklearn.cross_validation import train_test_split # Error
In[5]: from sklearn.model_selection import train_test_split # Amend
P316:
# 用 model_selection 替换 cross_validation
In[7]: from sklearn.cross_validation import cross_val_scroe # Error
In[7]: from sklearn.model_selection import cross_val_scroe # Amend
In[8]: from sklearn.cross_validation import cross_val_scroe # Error
scores = cross_val_score(model, X, y, cv=LeaveOneOut(len(X)) # Error
In[8]: from sklearn.model_selection