下面使用Logistic回归来预测患有疝病的马的存活问题,数据集中包含了368个样本和28个特征。数据集中包含了医院检测马疝病的一些指标,有的指标比较主观,有的指标难以测量,例如马的疼痛级别。另外需要说明的是,除了部分指标主观和难以测量外,该数据还存在一个问题,数据集中有30%的值是缺失的。首先在使用Logistic回归预测病马的生死之前,需要处理数据集中的数据缺失问题。
1. 准备数据:处理数据中的缺失值
对于有些存在缺失的数据来说,扔掉和重新获取是不可取的,所以有以下这些方法来解决数据缺失的问题:
使用可用特征的均值来填补缺失值
使用特殊值来填补缺失值,如-1
忽略有缺失值的样本
使用相似样本的均值添补缺失值
使用另外的机器学习算法预测缺失值
对于该实战中使用的数据集,在预处理阶段需要做两件事:
所有的缺失值必须用一个实数值来替换,这里选择实数0来替换所有缺失值,恰好能适用于Logistic回归,这样做在更新时不会影响回归系数的值。另外由于sigmoid(0)=0.5,即它对结果的预测不具有任何倾向性,因此上述做法也不会对误差造成任何影响。
测试数据集中发现一条数据的类别标签已经缺失,那么应将这条数据丢弃,这是因为类别标签与特征不同,很难确定采用某