首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在计算缺失值之前或之后可视化/分析数据?

在计算缺失值之前或之后可视化/分析数据?
EN

Data Science用户
提问于 2019-07-11 13:36:20
回答 3查看 1.4K关注 0票数 2

我的理解是,为了保存这些训练示例,我们将丢失的值归算在内,所以我们的机器学习算法有尽可能多的训练示例。

对我来说,在计算缺失值之前可视化/分析数据是有直觉意义的,因为计算会扭曲分布,并可能导致在计算之前对真实数据的错误假设。我可以看到一个在之前和之后都要做的例子,但是这为特性分析增加了时间。另一方面,如果缺失值的百分比高到足以影响数据的分布,我可以看到不计算值的情况。

在Python中,我设想使用类似于pd.Series.dropna()的东西来隔离现有的值。

TL;DR:我们是否应该在可视化数据并从中提取洞察力之前或之后估算缺失的值?

EN

回答 3

Data Science用户

回答已采纳

发布于 2019-07-11 22:59:35

为什么不两者兼得呢?正如您提到的,首先计算所有值的百分比可能是值得的。通常,如果数据集中的值是随机分散的,那么您可能也会想到一个可以接受的百分比,例如,丢失的值最多为10%。

有些库是专门为可视化丢失的数据而构建的,比如失联,它提供了很多想法。下面是跨功能的缺少变量的示例热图:

“缺失”通常意味着您有一个顺序数据集,例如时间序列数据。如果你有离散的观察,例如人的身高和鞋的大小,就没有顺序的因果关系(自相关:依赖于以前的值)。在这种情况下,归罪是没有意义的。

因此,假设您确实有顺序的数据,那么是否对缺少值的时间步骤进行归并或删除将真正取决于您的用例。也可能是数据的频率。如果所有缺失的值都出现在时间序列两端的一个块中,那么简单地省略该块就是一件好事。

例如,如果您有微小的频率数据,并且希望每天预测一次值,那么这里和那里缺少几分钟可能是可以容忍的,并且某种类型的估算(例如填充-forwad)不会产生很大的总体影响,但是可以帮助模型优化工作更有效。有些模型无法处理丢失的值,因此,计算是必要的。

在任何情况下,它都会在估算之前和之后将数据可视化。您通常可以运行相同的可视化无论如何。当然,这需要额外的几分钟时间,但是你可能会发现一些重要的问题。与稍后在调试经过培训的模型时只查找问题相比,这可以节省大量时间。

票数 3
EN

Data Science用户

发布于 2019-07-11 20:29:35

我认为你在这种情况下做得很好。如果在可视化之前估算缺少的值,那么就不会可视化“真”数据。但有时会有很多数据丢失,如果你删除了所有缺少属性的例子,那么你就不太可能可视化一个有代表性的数据样本来训练一个模型,或者更糟糕的是,你可能会错过一些重要的洞察力,因为有那么多的数据丢失了。

也许有办法让你从这两个世界中得到最大的好处?我建议在可视化之前估算缺失的值,但要在视觉上标记它们。例如,您可能会生成一个图,其中没有丢失数据的示例被着色为绿色,一个缺失字段的示例为黄色,而2+缺失字段的示例则为红色。

票数 1
EN

Data Science用户

发布于 2019-08-12 15:10:54

对我来说,在计算缺失值之前可视化/分析数据是有直觉意义的,因为计算会扭曲分布,并可能导致在计算之前对真实数据的错误假设。

我认为有一个关键的细节要回答,这可能会加深你的分析。您打算如何输入丢失的值?这很可能取决于两件事:

  1. 值的实际分布。根据分布的不同,不同的技术可能适用于每种情况:最常见的值,均值,一些机器学习算法,预测丢失的值,根据其他数据.但是要决定使用哪种方法,您必须首先了解原始数据。
  2. 丢失了多少值,请稍后讨论。

另一方面,如果缺失值的百分比高到足以影响数据的分布,我可以看到不计算值的情况。

是这样的。可以这样想:如果丢失值的百分比太高,那么您就没有准确地填充缺失值的依据。你可能只是发明了太多的数据。那以后该怎么演?你是在添加有价值的东西,还是为了保存这个属性,你自己投入了太多的发明?

希望这能有所帮助!

票数 1
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/55503

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档