回复:缺失值

数据挖掘 数据挖掘 预测建模 模型选择 集成建模
2022-02-16 09:09:41

我有一个大型数据集,其中包含每个用户的会话长度记录。我正在尝试根据会话长度来预测购买行为。但是此数据在会话长度列中有多个零。我应该如何处理这些零?我应该用其他值估算零吗?请建议。

1个回答

您必须问自己的问题是 0 是否真的是缺失值,或者实际上是会话长度。就其本身而言,这似乎不是问题。一些用户的会话可能非常短。我假设它在网站或其他东西上,他们本可以加载页面而不是立即离开。这还取决于数据是如何到达您的,可能事先进行了一些您不知道的处理。如果某些值实际上是 0,而其他值缺失,但已经用 0 填充了怎么办?您可能无法区分。

但是,如果它真的代表缺失,从统计的角度来看,丢弃这些记录更为保守,即使您可能会丢失其他列中的信息。仅当数据随机丢失时,估算值才有效如果是,那么有几种估算方法,最简单的是使用平均值/中值。

从机器学习的角度来看,缺失机制是什么并不重要,您只需为其赋予一个能够建模的值即可。既然它已经是 0,它就可以开始了。但是,如果您要对其进行估算,通常会在变量预处理期间完成,例如如果您想使列居中。之后,估算居中变量的平均值。并且您有几个选项用于居中、列规范化、最小最大缩放、最大绝对值缩放等。

在某些情况下,即使您估算值,创建一个附加变量来指示该变量是否从一开始就丢失可能会很有用。

没有简单的答案,可能值得尝试一些选项并查看最适合数据的选项。