我有一个与人类完成评论有关的数据集,目标变量是评论决定是否正确/不正确,我的一个特征是评论者的 4 周准确度得分。
然而,这些准确度分数并不总是可用的。我的问题是关于如何对这些数据建模——没有可用的准确度分数这一事实可能是一个信号。根据我对此的研究——我所看到的一切都告诉我必须估算或删除缺失的值。我想知道是否有技术可以将数据丢失的事实合并到数据集中。
也许我可以将分数转换为分类变量{低、中、高、不可用] - 这是常见的做法吗?我愿意接受建议,并很想听听在这些情况下通常会做什么
我有一个与人类完成评论有关的数据集,目标变量是评论决定是否正确/不正确,我的一个特征是评论者的 4 周准确度得分。
然而,这些准确度分数并不总是可用的。我的问题是关于如何对这些数据建模——没有可用的准确度分数这一事实可能是一个信号。根据我对此的研究——我所看到的一切都告诉我必须估算或删除缺失的值。我想知道是否有技术可以将数据丢失的事实合并到数据集中。
也许我可以将分数转换为分类变量{低、中、高、不可用] - 这是常见的做法吗?我愿意接受建议,并很想听听在这些情况下通常会做什么
估算或删除数据的缺失值的常见情况假设缺失值随机出现在数据中,因此缺失值与任务无关。
根据您的描述,在您的数据中,缺少值的事实本身就很重要。所以我会说是的,在这种情况下,将这些信息表示为分类变量是有意义的。请注意,它确实可以表示为分数特征的特殊值,但它不必是相同的变量。
为了帮助您找到其他资源,这通常称为“不随机丢失”。
一些模型,如 xgboost,会固有地处理缺失值,将树拆分为真实值,然后选择将缺失值发送到哪个分支。(CART 的其他实现不这样做,而昆兰树家族则完全不同。)
对于其他模型,我建议添加“缺失指标”功能,然后进行估算。特别是对于线性模型,原始特征的系数可以拟合“真实”斜率,而指标上的系数“修复”缺失值(以及您使用的任何插补)。参见例如这个 stats.SE answer。