训练集和测试集的划分

Ytrain:指的是缺失值那行所对应的有值的部分

Ytest:指的是缺失值,需要预测的部分(一般的监督学习不会预测Ytest,因为我们是预测该缺失的数据,所以Ytest不用做比较,直接进行预测填补缺失值)

Xtrain:指的是未缺失部分所对应的特征值

Xtest:指的是缺失部分所对应的特征值

 

决策树预测缺失值的方法(两种情况):

第一种情况:只预测一行缺失值

1.构建新的特征矩阵

2.划分训练集和测试集

3.用随机森林来预测

4.将预测的数值对原数据进行覆盖

 1 def fill_missing_rf(x, y, to_fill):
 2     df = x.copy()
 3     fill = df.loc[:, to_fill]
 4     df = pd.concat([df.loc[:, df.columns != to_fill], pd.DataFrame(y)], axis=1)
 5     
 6     Ytrain = fill[fill.notnull()]
 7     Ytest = fill[fill.isnull()]
 8     Xtrain = df.iloc[Ytrain.index, :]
 9     Xtest = df.iloc[Ytest.index, :]
10     
11     rfr = RandomForestRegressor(n_estimators=100)
12     rfr = rfr.fit(Xtrain, Ytrain)
13     Ypre = rfr.predict(Xtest)
14     return Ypre

 

第二种情况:预测多列缺失值

1.找出多列缺失值,将缺失值按照数值由小到大进行排列。(因为预测的情形需要有少到多,准确率更高)

2.构建新的特征矩阵

3.划分训练集和测试集

4.用随机森林来预测

5.将预测的数值对原数据进行覆盖

 

原文地址:http://www.cnblogs.com/future-panda/p/16808717.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性