机器学习训练营——机器学习爱好者的自由交流空间(入群联系qq:2279055353)
在这个例子里,我们向大家展示填补缺失值比丢弃它们得到的结果更好。但是请注意,缺失值填补并不总会改善预测结果,所以请使用交叉验证评价。有的时候,丢弃缺失行或使用标记值反而更有效。
一般时候,缺失值可以用均值、中位数或众数代替。当变量较多时,用中位数代替是一种稳健的方法。在本例中,填补将有助于分类器接近原始分数。
首先,导入必需的模块。
import numpy as np
from sklearn.datasets import load_boston
from sklearn.ensemble import RandomForestRegressor
from sklearn.pipeline import Pipeline
from sklearn.preprocessing import Imputer
from sklearn.model_selection import cross_val_score
导入模块后,从numpy工具包生成模拟数据集。
rng = np.random.RandomState(0)
使用函数RandomState
获得随机数生成器。0为随机种子,只要随机种子相同,产生的随机数序列就相同。
加载“波士顿房价”数据集,该数据集在【Python实例第1讲】介绍过。
dataset = load_boston()
X_full,