我正在构建一个自动清理过程,用于清除数据集中的空值.我发现很少有函数,如mode,median,mean,可以用来填充给定数据中的NaN值.但我应该选择哪一个?如果数据是分类的,则必须是模式或中值,而对于连续,它必须是均值或中值.因此,为了定义数据是分类的还是连续的,我决定制作机器学习分类模型.
我拿了几个功能,比如
1)数据的标准偏差
2)数据中的唯一值的数量
3)总数据行数
4)总行数的唯一比例
5)数据的最小值
6)数据的最大值
7)中位数和第75百分位数之间的数据数量
8)中位数和第25百分位数之间的数据数
9)第75百分位数和上部胡须之间的数据数量
10)第25百分位数和较低胡须之间的数据数量
11)上方晶须上方的数据数量
12)低于晶须的数据数量
首先使用这12个特征和大约55个训练数据,我使用归一化形式的逻辑回归模型来预测标签1(连续)和0(分类).
有趣的部分是它的工作!
但是,我是以正确的方式做到的吗?这是预测数据性质的正确方法吗?如果我能进一步改进,请告诉我.
最佳答案 数据分析看起来很棒.对于这部分
But which one I should select?
就我测试而言,平均值总是胜利者.对于每个数据集,我都会尝试对所有案例进行测试并比较准确性.
有一个更好的方法,但有点耗时.如果你想推进这个系统,这可以提供帮助.
对于缺少数据的每个列,找到其最近的邻居并将其替换为该值.假设您有N列不包括目标,因此对于每列,将其视为因变量,将其余N-1列视为独立列.并找到它的最近邻居,然后它的输出(因变量)是缺失属性的期望值.